char * 与 string 类型相互转换方法--Linux C/C++

1:对于C风格的字符串比如char*,char str[],转换为 string

         char * 和char str[]类型可以直接转换为string 类型;

          即,在char * chstr,

                      char arstr[]

                      string str=chstr;或者是string str=arstr;可以直接进行赋值。

2:对于string 转换为char *

     string提供一个方法可以直接返回字符串的首指针地址即:string.c_str();

     比如:string str="Hi Cpp";转换为char * 类型;

     const char * mystr=str.c_str();  注意要加上const.

 

      例外有个方法有点浪费内存:

     string str="woshi";

     char * pstr=new char [str.length()+1];

     strcat(pstr,str);

 

 

你可能感兴趣的:(C/C++)