问题 单项选择题

有以下程序: main() { char p[]={'a','b','c},q[]="abc"; printf("%d %d\n",sizeof(p),sizeof(q)); } 程序运行后的输出结果是( )。

A.4 4

B.3 3

C.3 4

D.4 3

答案

参考答案:C

解析: 字符数组即可以用{初始化列表}来初始化,也可以用一个字符串常量来初始化。但字符串常量系统会自动为其添加结束标记'\0',故比实际长度要多一位,所以本题输出为3 4,应该选择C。

填空题
单项选择题 案例分析题