问题 单项选择题

以下程序的输出结果是______。
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。

单项选择题
单项选择题