1. 长度实质
我们平时说的字符串的长度,往往会认为是字符串中包含的字符数,但是实际并不是这样,
实际的字符串长度是指,一个字符串在内存中所占的字节数 。 对于英文字符一般一个字符占用一个
字节,所以字符串的长度就是字符串的字符数,但是对于其它字符,例如中文字符,或者其它特殊字符
等,随着不同的编码,可能占用2-4个字节,看具体情况,所以一个包含两个这样字符的字符串的长度就
不是2了,而是4-8.
那没什么英文字符占用一个字节,因为ASCLL码中的字符都占用一个字节,并且大部分的编码都兼容了ASCLL编码
2. c++和c存储字符串的差距
对于字符串,是一串字符,但是计算机无法知道这串字符什么时候结束,这就给读取字符串带来了不方便,所以c语言将字符串后面加上一个'\0',表示字符串的结束。
但是对于c++使用string来定义字符串,这是个类,它记录了字符串的长度,所以就不需要添加'\0',了