有以下程序 #include <stdio.h> main() { char s[]="abcde"; s+=2; printf("%d\n",s[0]); } 执行后的结果是

admin2021-07-09  17

问题 有以下程序
     #include <stdio.h>
     main()
     {  char  s[]="abcde";
        s+=2;
        printf("%d\n",s[0]);
     }
执行后的结果是

选项 A、输出字符c的ASCII码
B、程序出错
C、输出字符c
D、输出字符a的ASCII码

答案B

解析 本题重点考察数组名的概念。在C语言中,数组名类似于一个指向数组首地址的指针常量,一旦定义就不能修改其内容。所以本题中的s+=2;语句让数组名s的内容加2是错误的,编译无法通过。因此B选项正确。
转载请注明原文地址:https://kaotiyun.com/show/5Ktp777K
0

最新回复(0)