【发布时间】:2019-02-13 15:31:29
【问题描述】:
我不明白这些代码是如何工作的:
1)
#include <stdio.h>
int main()
{
char x[] = "gate2011";
char *ptr = x;
printf ("%s", ptr+ptr[3]-ptr[1]);
return 0;
}
// 2011
2) 这个给了我一个空白输出虽然应用程序说它应该导致 ineapp
#include <stdio.h>
int main()
{
char x[] = "sanguineapp";
char *ptr = x;
printf ("%s", ptr+ptr[5]-ptr[2]);
return 0;
}
3) 还有这个和输出应该是 nguineapp
#include <stdio.h>
int main()
{
char x[] = "sanguineapp";
char *ptr = x;
printf ("%s", ptr+ptr[9]-ptr[4]);
return 0;
}
【问题讨论】:
-
你试过了吗?只需查看代码,我会期望以下输出:1)“te2011”,2)“guineapp”3)“ineapp”
-
我已经将输出放在我的问题中,但与应用程序测验的答案相比,您都错了。你能解释一下你是怎么解决的吗?
-
@user287107 2011 在第一个谜语中。