字符串的定义:由一对双引号括起来的一串字符(零个或多个)。它的结束标志是一个\0的转义字符,在计算字符串的长度时,\0是结束标志,不能算作字符串的内容,故而不能包括\0。
字符数组arr1中有5个元素,而字符数组arr2中末尾还隐藏了一个'\0',所以共有6个元素:
利用strlen函数来计算arr1与arr2的长度(strlen头文件为 #include<string.h>),格式为:strlen(变量名)。arr2中共有6个元素,末尾的'\0’是结束标志,不能算作字符串的长度,所以长度为5。arr1中没有'\0‘使得strlen计算停止,故而它将继续计算下去,直至遇见'\0'为止,所以它的长度为一个大于等于5的不确定数:
分别将arr1与arr2打印出来。由于arr2中末尾有隐藏的'\0'作为结束标志,所以arr2的打印内容为hello。而arr1中并没有'\0'使打印停止,所以后续会出现乱码:
若在arr1的末尾添加一个'\0'作为结束标志再打印,则与arr2打印结果相同: