问题
单项选择题
有以下程序:
main()
char a[7]="a0\0a0\0";int i,j;
i=sizeof(a);j=strlen(a);
printf("%d%d\n",i,j);
程序运行后的输出结果是______。
A) 2 2
B) 7 6
C) 7 2
D) 6 2
答案
参考答案:C
解析: 本题的考点是C语言的字符函数strlen和操作符sizeof。对于定义“char a[7]="a0\0a0\0";”,sizeof(a)是a数组占内存的字节数,也就是7;而strlen(a)是求字符串a的长度,字符串的结束符是‘\0’,而字符串“a0\0a0\0”中,第3个字符就是‘\0’,因此strlen(a)的值为2。输出结果应该是:7 2。