在C++编程时,经常会碰到需要将string转换为char*或者将char*转换为string这类问题。
下面用C++代码介绍下string和char*相互转换的方法。(大家可以运行试试)
#include<iostream>
#include<string>
using namespace std;
int main(){
//一、char* or char[] -->string
string x;
const char *y="hello";
const char z[]="hello world";
x=y;
cout<<x<<endl;
cout<<x.length()<<endl;
x=z;
cout<<x<<endl;
cout<<x.length()<<endl;
//二、string --> char* char[]
//string 是C++标准库里面其中一个,封装了对字符串的操作
//2.1调用string的data函数
string str1="abc";
char *p1=(char*)str1.data();
cout<<p1<<endl;
//2.2 调用string的c_str 函数
string str2="gdfd";
char *p2 =(char*)str2.c_str();
cout<<p2<<endl;
return 0;
}
//2.3... 两种也够用了 就不再多列举了