[ZZ] C++ char*,const char*,string的相互转换

1. string转const char*

 string s "abc";

constchar* c_s = s.c_str();

2. const char*转string
   直接赋值即可

constchar* c_s "abc";
string s(c_s);

 3. string转char*

string s "abc";
char* c;
constint len = s.length();
c newchar[len+1];
strcpy(c,s.c_str());


 4. char*转string

char* c ="abc";
string s(c);

 5. const char*转char*

constchar* cpc "abc";
char* pc newchar[100];//足够长
strcpy(pc,cpc);

 6. char*转const char*
   直接赋值即可

char* pc "abc";
const char* cpc = pc;

Always go with the choice that scares you the most, because that's the one that is going to require the most from you!
原文地址:https://www.cnblogs.com/sanquanfeng/p/3049706.html