string类型与字符串结束符

Posted ylww

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了string类型与字符串结束符相关的知识,希望对你有一定的参考价值。

std::string (也就是C++中的string):标准并没有规定字符串必须以\\0字符结尾。编译器在实现时既可以在结尾加上\\0,也可以不加,这个是由编译器决定的,因为string是一个类,它的长度信息已经封装到类的私有变量里面了。

但是当通过c_str()或者data()(二者在c++ 11以及之后的标准中等价)转换得到的const char *时,会发现最后一个字符一定是\\0。这个就是C语言中的string的结尾标志了(C语言中没有string类,都是char *)。

————————————————
版权声明:本文为CSDN博主「土豆西瓜大芝麻」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jinking01/article/details/109333692

以上是关于string类型与字符串结束符的主要内容,如果未能解决你的问题,请参考以下文章

类型转换

Redis数据类型函数:string类型函数

前端-Javascript

Java:具有长类型参数的 String.substring()

如何将String类的字符串 赋值给Char数组

如何将String类的字符串 赋值给Char数组