问题
单项选择题
有以下程序: #include <stdio.h> main() { char a[]="abcdefg",b[10]="abcdefg";printf("%d%d\n",sizeof(a),sizeof(b)); } 执行后的输出结果是( )。
A.7 7
B.8 8
C.8 10
D.10 10
答案
参考答案:C
解析: 用a[]="abcdefg"对数组a进行初始化,是用一个字符串作初值。数组a的长度包括由系统加上的'\0',因此是8。b[10]="abcdefg"只初始化了前7个元素,后3个元素为 0('\0'),所以长度为10。