有以下程序 main() {char a[]={’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’\0’};int i,j; i=sized(a);j=stden(a); printf(“%d,%d\n”,i

admin2010-01-10  20

问题 有以下程序    main()    {char a[]={’a’,’b’,’c’,’d’,’e’,’f’,’g’,’h’,’\0’};int i,j;      i=sized(a);j=stden(a);      printf(“%d,%d\n”,i,j);    }    程序运行后的输出结果是

选项 A、9,9
B、8,9
C、1,8
D、9,8

答案8

解析 本题中首先定义了字符数组a,由于它的长度省略,所以其长度由初值个数确定,为9。接着将sizeof()函数返回的值赋给i(sizeof()函数的作用是返回运算对象占用的字符数),所以i值为9;然后将strlen()函数的返回值赋给j(strlen()函数的作用是返回字符串的长度,不包括字符串的结束标记’\0’),所以j值为8,所以最后输出的i, j的值为9,8。
转载请注明原文地址:https://kaotiyun.com/show/9XWp777K
0

最新回复(0)