大神,这道C语言的题目怎么做?

2024年11月30日 20:32
有5个网友回答
网友(1):

首先 *p=a+1 应该是p=a+1 吧!

A选项 *p=='r',所以 *p+4 输出的就是字母r后的第四个字母v。 其余三项输出均为a;
C选项 因为系统在字符串后补加了一个’\0‘,所以用sizeof(a)求得的字符数组长度是8,而不是字符串长度7 剩下的就容易看出来了吧!

网友(2):

显然为A,A将会输出v
C选项要注意sizeof(a)等于8

网友(3):

*p=a+1(='r'=a[1])这个应该很简单 所以*(p+4)=a[1+4]='a' a[sizeof(a)-3]=a[8-3]='r' *(a+5)=a[5]='r' 所以只有A不是 *p+4=(char)('r'+4)=v

网友(4):

选A ‘*p’会输出r,那么*p+4会出书r+4 = v,A选项会输出v

网友(5):

A *p+4 *p=1 输出‘5’