66问答网
所有问题
如果char x[]=“CHINA”,则sizeof(x)=_,strlen(x)=_ 求结果,谢谢!
如题所述
举报该问题
推荐答案 2013-05-30
6,5
strlen(char*)函数求的是字符串的实际长度,它求得方法是从开始到遇到第一个'\0',如果你只定义没有给它赋初值,这个结果是不定的,它会从aa首地址一直找下去,直到遇到'\0'停止。而sizeof()函数返回的是变量声明后所占的内存数,不是实际长度.这里x是"CHINA",后面得加个结束符'\0',所以占的内存是6,而strlen就是算china是5,
所以结果是6 5
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://66.wendadaohang.com/zd/ssDv99Usi.html
其他回答
第1个回答 2013-05-30
则sizeof(x)=6,strlen(x)=5
追问
万分感谢!
第2个回答 2013-05-30
先6 后 5
相似回答
"
China
"所占的数组长度、数组元素、字节分别是多少?
答:
char s[]=
"
China
";则数组s共分配6个字节(即
sizeof(
s)等于6,因为字符串会自动添加'\0'),但字符串s的长度是5(即
strlen(
s)等于5)。
sizeof
和
strlen
答:
答案分别为 8 因为
sizeof
测的是数组占用的空间,字符串后面要加一个0/ 7 这个是字符数组,数组中存放的就是给定的字符 7
strlen
测的是数组实际的非零字符的长度,他是从起始开始就算的,遇到零 停止,0不算在内 7
char s[
12
]=
{“string”}; 则printf(“%d\n”
,strlen(
s
))
答:
设有数组定义:
char
str
[]=
”
China
”;则下面的输出为 printf( “%d”
,strlen(
str)); 这个呢 ---虽然有“答案”,可是它们不同啊,可见至少有一个是错的。你可以查阅书本,更直接地,可以上机验证:
sizeof(x),strlen(x)
请问这两个是什么意思?
答:
sizeof(x)
表示求它的字节长如sizeof(
char)=
1
,strlen(x)求
其字符串的长度
已知:
char
*s="abcde";
则sizeof(
s)、sizeof(*s)、
strlen(
s)的值依次...
答:
答案是 4 1 5
...='\0';
x[
2
]=
'0'; 为什么
sizeof(x)=
7?
strlen(x)=
0?
答:
strlen检测到'\0'就返回了,而且'\0'不会计入其中,所以x[0]=0='\0'那么
strlen(x)
碰到x[0]就返回了,自然返回0。而
sizeof
关键字返回的是数据的长度,数组x有7个
char
元素,每个元素占1个字节所以返回7。
大家正在搜
相关问题
sizeof(x),strlen(x)请问这两个是什么意思?
设有说明语句:char x[20]="good\0morni...
为什么char x[]="string"; x[0]=0;x...
给出以下定义: char x[ ]="abcdefg";则正...
c语言sizeof()和strlen()
c语言的size of,strlen什么意思
为什么下面的strlen(x)=0
char str[]="ab\n\012\\\"" prin...