
2个回答
展开全部
char *s; //声明s为字符型指针变量
s="Olympic"; //把字符串"Olympic"的首字符地址赋值给s,因为字符串可以看作一个字符数组
B项 "Olympic"有8个字符空间 字符串都有一个结束符'\0' 表示这个字符数组的最后一位
C D 把字符串理解为字符数组,指针理解为标记同种类型数据的数据的内存地址就能知道错在那里啦!
s="Olympic"; //把字符串"Olympic"的首字符地址赋值给s,因为字符串可以看作一个字符数组
B项 "Olympic"有8个字符空间 字符串都有一个结束符'\0' 表示这个字符数组的最后一位
C D 把字符串理解为字符数组,指针理解为标记同种类型数据的数据的内存地址就能知道错在那里啦!
追问
A 选项中的s不也是地址吗 可以这样直接把字符串的首地址赋给s吗? 我一直觉得A选项应该这 char *s="olympic";
追答
char *s; s="absd"; 与 char *s="absd"; 只是写法不一样,结果是一样的。
声明指针s后, 你试试 *s = ''ccccc'; 和 s = "ccccc"是不是一样的就知道是么回事了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询