strlen(hello word):字符串为“hello word”这种字符串常量,系统会在其后自动补上’\0’;但是求字符串长度的函数strlen()只要遇见’\0’,就会返回函数值,’\0’不算在其中。所以返回值为10(空格也算一个字符)。
strlen(hello\0world):其中的字符串为“hello\0word”,而strlen函数遇到’\0’就代表结束,所以返回值为5。
注意:当用字符串给字符数组赋值时,由于要添加结束符’\0’,数组的长度要比字符串的长度大1.
例如: char str[]=“good job”;
该数组在内存中的实际存放情况为:
g o o d j o b \0
字符串的长度为8,数组长度为9。
‘\0’是由c编译系统自动加上的。采用了’\0’结束标志,因此在字符串赋初值时一般不用指定数组的长度,而是由系统自动分配。
c语言中字符串长度以及结束标志'\0'
最新推荐文章于 2024-01-19 23:18:31 发布