转自:http://blog.163.com/reviver@126/blog/static/1620854362012118115413701/
重回Linux,太多地方需要用到这三种类型的转换,于是记录下来备用,以便查看~
1. string转const char*
string s = "abc"; const char* c_s = s.c_str();
2.
const char*转string
直接赋值即可
const char* c_s = "abc"; string s(c_s);
3.
string转char*
string s = "abc"; char* c; const int len = s.length(); c = new char[len+1]; strcpy(c,s.c_str());
4.
char*转string
char* c = "abc"; string s(c);
5.
const char*转char*
const char* cpc = "abc"; char* pc = new char[100];//足够长 strcpy(pc,cpc);
6.
char*转const char*
直接赋值即可
char* pc = "abc"; const char* cpc = pc;