string类型的变量如果要转换成char*类型字符串,string类中提供了三个方法,方法如下:
1. const char* c_str() const //直接返回一个以'\0'结尾的字符串;
2. const char* data() const //直接以数组方式返回string的内容,其大小为size()的返回值,结尾并没有'\0'字符;
3. size_t copy( char* s, size_t n, size_t pos = 0 ) const //把string的内容拷贝到buf空间中,n为拷贝长度,注意在buf末尾加上'\0'字符。
注意:c_str()的返回类型是指向常量char类型的指针,说明指针所指向的空间内容不允许修改,只可以读取不可以更改。c_str()返回的指针是string内部的指针,并没有像copy函数一样把内容拷贝出来。
1. const char* c_str() const //直接返回一个以'\0'结尾的字符串;
2. const char* data() const //直接以数组方式返回string的内容,其大小为size()的返回值,结尾并没有'\0'字符;
3. size_t copy( char* s, size_t n, size_t pos = 0 ) const //把string的内容拷贝到buf空间中,n为拷贝长度,注意在buf末尾加上'\0'字符。
注意:c_str()的返回类型是指向常量char类型的指针,说明指针所指向的空间内容不允许修改,只可以读取不可以更改。c_str()返回的指针是string内部的指针,并没有像copy函数一样把内容拷贝出来。