A-A+

有以下程序: #include <stdio.h> #include <string.h>

2022-08-06 01:28:47 问答库 阅读 174 次

问题详情

有以下程序: #include <stdio.h> #include <string.h> main() { char a[]={"a","b","c","d","e","f","g","h",""}; int i,j; i=sizeof(a); j=strlen(a); printf("%d,%dn",i,j); } 程序运行后的输出结果是()。
A.9,9
B.8,9
C.1,8
D.9,8请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:D
解析:sizeof是求字节运算符,在字符数组a中,“\0”也作为字节保存,是a数组的一个成员,所以sizeof(a)的值应为9;strlen是测试字符串长度的函数,函数的值为字符串中的实际长度,不包括“\0”在内,所以strlen(a)的值为8。

考点:程序