c语言字符串的长度
⑴ c语言字符串长度 高手进
你指定了\0结束标志的了当然就是了,没有指定的话会自动加的
⑵ C语言 字符串长度
这个字符串长度为10个字符。
你可以用strlen("ab'1'\\\12803")来求这个字符串的长度。
也可以用sizeof("ab'1'\\\12803")来求,但是这个求出的结果是多了一个字符串结束符\0。
你可以试着输出这个字符串看看是不是10个字符。
实际上,这10个字符分别为:
1、a
2、b
3、'
4、1
5、'
6、\\(\\表示:前一个表示这是一个转义字符,后一个才是字符串中的真实字符)
7、\12(同上,\表示这是一个转义字符,其后面的1~3个数字位是一个八进制数,在这里,第3个数字为8,所以它不是这个八进制数的一部分,即这个八进制数应该是12,转换为10进制数即为10,对应的ASCII码为一个换行符)
8、8
9、0
10、3
注:\用来说明一个转义字符,如\\表示反斜杠字符“\”,\ddd表示1~3位八进制数所代表的字符(ASCII码),\xhh表示1~2位十六进制数所代表的字符。
⑶ C语言字符长度的问题。
字符 '\0'是结束符,其ASCII码值为0,并不是字符 '0'
char x[]="0tring"; 里面是 字符0
如果修改为
char x[]="\0tring";
你再测试就是0了。
⑷ c语言 字符串长度与数组长度,高手进
你好
应该这样理解
首先,就c语言来讲,字符串的实现一般使用数组,例如
char
s[]
=
"hello";
hello里面有五个字符
分别是
h
e
l
l
o
由于c语言规定在存放字符串的数组里要以字符串结束符来结束
也就是‘\0’
所以上面定义中的数组s长度为字符总个数5
加上一个结束符‘\0’
也就是6
那么
字符串的长度就是5
但该数组s的长度就是6
至于通俗的数组长度,应该就指数组里面可存放元素的个数
例如char
s[100]
=
"hello";
虽然字符串s的长度为5
但这时数组长度就为100
希望能明白
⑸ C语言中字符串的长度代表着什么
先考虑他是个字符串,所以最后一位需要是'