C++ int、char和string的互相转换

将int转化为char:

如121转为['1','2','1'],由于int与char之间的转换需要借助ASC码实现,如1变为’1‘:int t=1;char(t+48);经典的做法是通过栈,从低位到高位逐位读取,存入栈中,再循环pop栈顶元素实现高位到低位的读取。

今天看到一种做法:我们可以先把int通过to_string函数转为string类型,然后通过auto关键字遍历字符串,实现从高位到低位的字符读取。

int转为string:

通过to_string函数实现

char转string:

单个char转string:

1.可以借助string的构造函数,string(num,s)//生成一个字符串,包含num个s字符

2.声明string 后将char push_back string s1; s1.push_back(c);

char数组转string:

可以直接复制,如char c[3]={'a','b','c'}; string a=c;

char转int:

单个char直接减掉48,可得到int值,char数组通过遍历

string转int:

stringstream stream;
string result=”10000”;
int n=0;
stream<<result;
stream>>n;//n等于10000

string转char:

单个string转char:return s[0];

string转char数组:遍历逐个提取
 

猜你喜欢

转载自blog.csdn.net/weixin_39003229/article/details/90753449