string、char* 、int数据类型相互转换

string类型转换成char*类型,这里一般有以下三种方法:
1.c_str()方法

string name="Qian";
char *str=(char*)name.c_str();
printf("%s
",str);

2.data()方法

string name="Qian";
char *str=(char*)name.data();
printf("%s
",str);

3.copy()方法

string name="James";
char str[10];
name.copy(str,5,0);//5代表复制字符个数,0代表复制的初始位置
str[6]='';//一定要自行加上字符串结束符
printf("%s
",str);

string类型转换成int double类型

string str="1";
int a=stoi(str);
 double b=stod(str);

Char类型转换成string类型

//1、构造函数里有个string(size_t,char)
char x = 'a';
string s(1,x);
//2、string初始化没char,但是push_back可以
string s;
s.push_back(x);
//3、string可以由char*初始化
char xx[2] = {x,0};
string s(xx)
原文地址:https://www.cnblogs.com/long5683/p/11098952.html