问题
单项选择题
以下程序的输出结果是______。
main()
char st[20]="hello\0\t\\";
printf("%d%d\n",strlen(st),sizeof(st));
A.99
B.520
C.1320
D.2020
答案
参考答案:B
解析:[评析] C语言中字符串是以'\0'字符结束的,且strlen()函数计算的是'\0'字符前的所有字符的个数。本题中strlen(st)应为5。数组定义以后系统就为其分配相应大小的内存空间,而不论其中有没有内容。sizeof()函数是计算变量或数组的所分配到的内存空间的大小。所以本题的sizeof(st)为20。