如何从string类型的变量 返回一个char* 类型

来源:百度知道 编辑:UC知道 时间:2024/06/09 19:15:10
如题目

string类带有一个转换为C类型字符串的函数c_str();
如:
string str("abc");
char *pstr = str.c_str();

char *p = (char*)&string;

经实验,自定义数据类型的地址往往就是它里面第一个变量的地址。一般用类自定义数据型时是也往往把最重要的首变量作为它的元数据。

如CString 等都可以这么去理解。

string 是字符串,
不是一种数据类型。
一般用char* or char[] 进行定义的

可以使用string类的成员函数c_str()
这个函数的原型是:const char *c_str()const;

该函数可以返回一个指针,指向调用函数的string对象中的以空字符结尾的字符串。不过,在程序中,你不能修改这个以空字符结尾的字符串

char *str_cast;
string str("this is a test");
str_cast=str.c_str();