C++中string类型转换成char*
来源:互联网 发布:北欧神话 知乎 编辑:程序博客网 时间:2024/06/07 04:01
有时候有string对象,但需要c-风格字符串,该如何办呢?可以把string类型转换成char*类型,这里一般有以下三种方法:
1.c_str()方法
string name="James";char *str=(char*)name.c_str();printf("%s\n",str);
输出James,说明string类型变量已经成功转换成char*。
2.data()方法
string name="James";char *str=(char*)name.data();printf("%s\n",str);
输出James,说明string类型变量已经成功转换成char*。
3.copy()方法
string name="James";char str[10];name.copy(str,5,0);//5代表复制字符个数,0代表复制的初始位置str[6]='\0';//一定要自行加上字符串结束符printf("%s\n",str);
输出James,说明string类型变量已经成功转换成char数组。
阅读全文