277267104
幼苗
共回答了19个问题采纳率:94.7% 举报
strlen()函数用来计算字符串数组的长度.它包含再库中.
这个长度代表字符串中以 为结束符前面的字符数.
“hello t\”可以分解位{'h','e','l','l','o',' ',.}
'h','e','l','l','o'共5个字符
strlen(st)的值为5.
sizeof()函数用来统计参数所占的内存空间,即字节数.因为数组st[20]是字符型的,每一个数组元素占据一个字节,数组共20个元素.
所以sizeof(st)的值是20.
编译不过的原因有两个:
1、如前所述strlen函数调用应该包含头文件
所以应该添加#include
2、printf(%d %d n”,strlen(st),sizeof(st));
这句差一个" 当然编译不过.
修改成printf("%d %d n”,strlen(st),sizeof(st));
最后修改的代码应该是:
#include
#include(可以省略)
main()
{ char st[20]= “hello t\”;
printf(“%d %d n”,strlen(st),sizeof(st));
}
另外提供一篇关于sizeof()和strlen()详细解释的文章.
链接如下:
1年前
3