66问答网
所有问题
C语言中,关于字符串长度与字符数组长度的问题。
Char a[]={'a','b','c'};中为什么说数组长度是3,但字符串长度不确定呢?字符数组与字符串之间究竟是什么关系呢?
举报该问题
推荐答案 2013-11-29
1楼正解,你在初始化时给数组a赋了3个值,所以其实a的类型应该是 char a[3],数组长度为3,。
而
字符串
就不一样了,他必须以‘\0’结尾,你的 ‘a’ ‘b’ ‘c’存储在一个连续的地址上,字符串的长度是从‘a’的地址开始一直计数,当读到‘\0’时结束,虽然你没有用到‘c’后面的地址,但它会一直读下去并计数,如果‘c’后面的地址存的是‘\0’那长度就是3了,如果不是就一直往下读,所以说字符串的长度不确定
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://66.wendadaohang.com/zd/UDvD9p229Usi2sUD9vv.html
其他回答
第1个回答 2013-11-29
C语言中没有字符串类型,C风格字符串用字符数组来表示,并以‘\0’结束,与字符串操作相关的函数都要求被操作的字符串满足这一条件,你给出的字符数组没有最后的空字符,也就是说编译器没有一个标志可以让它结束对这个字符串的长度的求解,所以不确定,数组长度为3是因为只有3个元素,如果你这样初始化:char a[] = "abc",编译器会自动给你加一个空字符,这样字符串长度就能确定为3了(确定字符串长度时编译器忽略最后的空字符)
第2个回答 推荐于2017-10-14
数组长度指的是数组的元素个数,
字符串
长度是以‘\0’为标志来确定的,举个例子:
char a[20]="abc";
数组长度是20,而字符串长度是3,隐含的'\0'不算在字符串长度中。
本回答被网友采纳
第3个回答 2013-11-29
Char a[]={'a','b','c'};按数组来说已经初始化了3个char类型,分配了3个char大小空间,而如果作为字符串,内存空间给字符指针a只指定了三个连续的char大小的空间,然后a[2]后面的内存块空间储存的到底是什么内容就是随机的了,而字符串以 '\0' 结尾,后面具体哪个是 '\0'完全不确定 ,所以字符串的长度无法确定
第4个回答 2013-11-29
C语言约定字符串以 '\0' 结尾,上述数组末尾没有 '\0' ,所以字符串的长度无法确定。
1
2
下一页
相似回答
c语言
字符串长度与数组长度,
高手进
答:
首先,就
c语言
来讲
,字符串的
实现一般使用
数组,
例如 char s[]= "hello";hello里面有五个字符 分别是 h e l l o 由于c语言规定在存放
字符串的数组里
要以字符串结束符来结束 也就是‘\0’所以上面定义
中的数组
s长度为字符总个数5 加上一个结束符‘\0’也就是6 那么
字符串的长度
就是5 ...
...若一个
字符串的长度
为n,则存储它的
字符数组的长度
至少为___。_百度...
答:
【正确答案】n+1
【解析】在C语言中,字符串是以‘\0’结尾的, 所以如果字符串长度为n。也就是有n个字符,那么加上‘\0’就是有 n+1个字符。望采纳~ 有问题再问哦~ o(∩_∩)o
关于C语言的字符串的
。
答:
2、对于字符数组,在
C语言里,
字符数组会在末尾自动添加‘\0’,其长度也为1.所以,
字符数组长度
==
字符串长度
+ 1.谢谢!
C语言
小题:
关于数组长度和字符串长度
答:
Morning";或 char a[]={"Good Morning"};采用这种方式初始化
字符数组,
可以不指定
数组长度,
但数组的实际长度比
字符串
常量的长度多1,因为系统会在最后添加字符串结束标志‘\0’;若指定了
数组的长度,
如果字符串常量的长度大于数组长度会出错,如果小于数组长度,系统会将未赋值的元素全部充成‘\0’。
C语言问题
。
数组字符串长度问题
。我写的对不对啊,分为实际
长度和
函数计...
答:
char s[]={'a','b','
c
'}; //实际占用3个字节,strlen计算
长度
为(随机值),不是3,因为这个只明确了s是一个有三个元素的
字符数组,
第四个元素已经是非法空间了。char s[3]="abc"; //编译通不过,因为"abc"需要4个字节,而s[3]只有3个字节的空间。char s[3]={'a','b','...
C语言字符串
常量
,字符数组
占内存大小
问题
?
答:
用函数求的长度其实就是
字符串长度,
而非占内存大小。因此长度是4,占内存是5,最后有个'\0'做结束符,不是'\n'。
字符数组
如果是字符串就是这规则,否则不是
大家正在搜
字符串与字符数组的区别
字符数组可以存放字符串
字符数组只能存放字符串
c语言字符串数组
字符和字符串的区别
字符串数组
字符和字符串
字符串数组赋值
数组转字符串
相关问题
C语言中关于字符数组的长度问题
C语言中将字符串赋值给字符数组的问题
c语言中关于字符串长度的问题
C语言问题,关于字符数组的长度问题
C语言字符串长度和数组长度的问题
c语言中关于字符数组长度的问题。
关于C语言字符数组中字符串长度问题
C语言关于数组元素个数和字符串长度的问题~~~~~~~