c语言中字符串长度以及结束标志'\0'


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'结束标志,因此在字符串赋初值时一般不用指定数组的长度,而是由系统自动分配。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM