有以下程序: main() { char a[]="abcdefg",b[10]="abedefg";printf("%d%d\n",sizeof(A) ,sizeof(B) ); } 执行后输出结果是( )。

admin2009-01-15  36

问题 有以下程序:    main()    {  char a[]="abcdefg",b[10]="abedefg";printf("%d%d\n",sizeof(A) ,sizeof(B) );    }    执行后输出结果是(  )。

选项 A、7  7
B、8  8
C、8  10
D、10  10

答案4

解析 本题中定义两个字符型数组,其中a省略了长度,定义了b的长度为10,并赋初值分别为“abcdefg”和“abcdefg”。所以a的长度为赋值给它的字符串的字符个数7加上一个结束转义字符,即a的长度为7+1为8。定义时b的长度定义为10,故b的长度为lo,因此最后通过函数sizeom求得的数组a和数组b的长度分别为8和10,所以,4个选项中选项c符合题意。
转载请注明原文地址:https://kaotiyun.com/show/cQXp777K
0

最新回复(0)