解惑char[] / char* / string(C++) 相关关系
const char* // 以"\0"结尾。
char[] // 以"\0"结尾。
string // 取决于C++实现,并不一定以"\0"结尾
char[n] = "string" // 当string长度+"\0" > n 时,会因空间不足出错
string.c_str() // 用此函数转const char*时, 会在字符串末尾 自动补:"\0"
// char* 转string 时, 会自动把末尾的 "\0" 去掉。
strlen() // 是取字符串除去结尾符 "\0" 的长度。
C++字符串类型解析
本文详细解析了C++中char[]、char*及string类型的内部工作机制及其相互转换过程。介绍了不同字符串类型的特点,如constchar*和char[n]的使用限制,以及string类的特殊功能。同时探讨了字符串长度测量方法。

被折叠的 条评论
为什么被折叠?



