#include <stdio.h>
#include <stdlib.h>
int main()
{
char ch[]={"abc\0def"},*p=ch;
printf("%c",*p+4);
return 0;
}
程序中*p+4; 的含义不是ch[0]+4吗??怎么理解?求指点
#include <stdio.h>
#include <stdlib.h>
int main()
{
char ch[]={"abc\0def"},*p=ch;
printf("%c",*p+4);
return 0;
}
程序中*p+4; 的含义不是ch[0]+4吗??怎么理解?求指点
该回答引用ChatGPT
请参考下面的解释,如果觉得不错还请点击 采纳,感谢支持!
*p+4" 表示的是 p 指向的字符的 ASCII 码值加上 4 后对应的字符。因为 p 指向 ch[0],所以 "*p+4" 相当于 ch[0]+4。所以输出的是字符 'e'。