1、从C++标准上的解释来看,只有一点区别: c_str() 返回一个指向正规C字符串的指针常量,该指针保证指向一个 size() + 1 长度的空间,而且最后一个字符肯定是 \0 ; 而 data() 返回的指针则保证指向一个size()长度的空间,不保证有没有 ...
data和c str data 和c str 都是用来获取底层字符串的首地址的,但是在C 中规定的是data 返回的字符串不保证有结尾 ,但是c str 返回的字符串保证有结尾 ,也就是C 标准在设计字符串的时候是想抛弃C风格的字符串语法的,但是在实际应用中,往往需要将C 的string转换为C风格的字符串const char 。 这一点平常使用的时候没问题,但如果想直接通过C风格的接口修改str ...
2020-11-11 19:26 0 564 推荐指数:
1、从C++标准上的解释来看,只有一点区别: c_str() 返回一个指向正规C字符串的指针常量,该指针保证指向一个 size() + 1 长度的空间,而且最后一个字符肯定是 \0 ; 而 data() 返回的指针则保证指向一个size()长度的空间,不保证有没有 ...
看下面的英文解释: const char* c_str ( ) const;Get C string equivalentGenerates a null-terminated sequence of characters (c-string) with the same content ...
看下面的英文解释: const char* c_str ( ) const;Get C string equivalentGenerates a null-terminated sequence of characters (c-string) with the same content ...
c_str函数的返回值是const char*的,不能直接赋值给char*。 c++语言提供了两种字符串实现,其中较原始的一种只是字符串的 c语言 实现。与C语言的其他部分一样,它在c++的所有实现中可用,我们将这种实现提供的字符串对象,归为c-串,每个c-串char*类型 ...
标准库的string类提供了3个成员函数来从一个string得到c类型的字符数组:c_str()、data()、copy(p,n)。 1. c_str():生成一个const char*指针,指向以空字符终止的数组。 注: ①这个数组的数据是临时的,当有一个改变这些数据的成员函数被调用 ...
这两个函数经常用到,总是记不住,记下来,方便翻阅 c_str()和data():生成一个const char*指针,指向一个临时数组。 c_str()函数返回一个指向正规C字符串的指针,内容与string串相同。 C++中c_str()主要用法就是为了与C语言兼容,在C语言中没有string ...
先看一段代码和它的运行结果: 看到结果了么这个运行的结果和我们理解的是不会有差距.对于经验丰富的开发者可能会微微一笑,但是对于一个刚刚学习的人就开始疑惑了.这里主要说两个问题: 1、声明了一个string实例,使用c_str()进行赋值后,可以正常输出c_str()的值 ...
::string::c_str c_str()函数返回一个指向正规C字符串的指针常量, 内容与 ...