字符(串)与数字的相互转化
1. string类
用stringstream比较方便
需要包含#include< string > 和 #Include< sstream > 头文件
//数字转化为字符串
string str;
stringstream ss;
ss << 12.0;
ss >> str;
cout<<str
//数组转化为字符串
string str;
int a[7]={1,2,3,4,5,6,7};
for (int i = 0; i < 7; i++)
{
string t;
stringstream ss;
ss << a[i];
ss >> t;
str += t; //字符串拼接
}
cout<<str;
//字符串转数字
double a;
string res= "123.32";
stringstream ss;
ss << res;
ss >> a;
cout<<a;
//其他方法
string s;
int a;
for (int i = 0; i < s.size(); i++)
{
a+=s[i] - '0'; //s[i]是字符,而s是字符串 可不能s-'0'
}
cout<<a; //得到s的各位数之和
2. char类
//数字转字符
int a=1;
char c1=char(10);
char c2=a+'10';
//字符转数字
char c = 'a';
int n1=(int)c;
int n2=c-'0';
//若直接输出,则默认输出为数字
cout<<2+'a'; //99
//字符串转数字
char c1[]="123";
int a = 0;
for(int i=0;i<3;i++){
a=a*10+c[i];
}
//数字转字符串
char c2[];
int b = 123;
for(int i=0;i<3;i++){
c[i]=b%10;
b/=10;
}
今日创作bgm:《七里香》-周杰伦