C语言填空: 若字符数组定义为char a[]="ancdn\0",那么字符串a的长度为?(答案是
C语言填空:若字符数组定义为chara[]="ancdn\0",那么字符串a的长度为?(答案是5还是6呢)...
C语言填空:
若字符数组定义为char a[]="ancdn\0",那么字符串a的长度为?(答案是5还是6呢) 展开
若字符数组定义为char a[]="ancdn\0",那么字符串a的长度为?(答案是5还是6呢) 展开
5个回答
展开全部
char a[]="ancdn\0";
字符串长度为 5。
因为 字符串长度 算到 字符串结束符 以前,不包括 字符串结束符。
例如:"123456\089abcd\0", 字符串长度计算到第一次遇到的结束符\0,长度是 6, 后面不算。
-----
char a[]="ancdn\0";
占内存 7 个字节,虽然你加入了一个结束符,但 因为双引号括起的字符串,另含一个字符串结束符,占内存 7 个字节 含了2个结束符。
如果是:
char a[]="ancdn"; 则占内存 6 个字节,因为双引号括起的字符串,另含一个字符串结束符。
---
streln(a) -- 计算字符串 长度
sizeof(a) -- 计算占内存 字节个数。
字符串长度为 5。
因为 字符串长度 算到 字符串结束符 以前,不包括 字符串结束符。
例如:"123456\089abcd\0", 字符串长度计算到第一次遇到的结束符\0,长度是 6, 后面不算。
-----
char a[]="ancdn\0";
占内存 7 个字节,虽然你加入了一个结束符,但 因为双引号括起的字符串,另含一个字符串结束符,占内存 7 个字节 含了2个结束符。
如果是:
char a[]="ancdn"; 则占内存 6 个字节,因为双引号括起的字符串,另含一个字符串结束符。
---
streln(a) -- 计算字符串 长度
sizeof(a) -- 计算占内存 字节个数。
展开全部
问字符串a长度,答案 :6
char a[]="ancdn\0"等价于
char a[]={'a','n','c','d','n','\0','\0'}
(默认的结束符‘ \0’不用算在内) 要是问定义的数组a[]所占空间,答案为:7 (包括默认的‘\0’)
希望对您有所帮助!
char a[]="ancdn\0"等价于
char a[]={'a','n','c','d','n','\0','\0'}
(默认的结束符‘ \0’不用算在内) 要是问定义的数组a[]所占空间,答案为:7 (包括默认的‘\0’)
希望对您有所帮助!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是6,如果已经给了长度,你能存字符的数目是长度-1,要留一个位给结束符
更多追问追答
追问
我觉得也是
追答
要相信自己嘛..
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
6,结束符“\0”在内存中也占一个单位
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
5个字符1个空字符
追问
他问的是长度,应该就是6吧
追答
嗯
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询