注册 登录
编程论坛 C++教室

c++string类中的字符串,在底层实现上,是以null空字符结尾的吗?

go_hao 发布于 2009-11-09 09:50, 1870 次点击
c++string类中的字符串,在底层实现上,是以null空字符结尾的吗?
--------------------------
c风格的字符串,必须以null空字符结尾,但是c++中,string类对象的字符串不要这样,但是我不明白,它的底层实现如何实现的呢?一个字符总要标识它的结尾呀。是不是在底层也是用\0结尾,是不是包装了一下。

底层处理的源码可以看到吗?想了解是如何处理的?

另外,api函数调用时,好象也是按\0处理字符串的吧。
如果不是的话,string类,是如何标识一个字符串的结尾标志呢?
1 回复
#2
flyingcloude2009-11-09 11:23
string类是对c串的一个封装,还是以'\0'结束的,外加了一个长度。
string在安全性方面作了更多的考虑。
1