C++推荐使用STL中的strngstream。
字符串转化为数字
#include<cstdio>
#include<iostream>
#include<algorithm>
#include <string>
#include <sstream>
using namespace std;
int main(){
string a="521";//float和double等等一样
stringstream s;
int b;
s<<a;
s>>b;
cout<<a<<" "<<b*2<<endl;
return 0;
}
数字转化为字符串:
#include<cstdio>
#include<iostream>
#include<algorithm>
#include <string>
#include <sstream>
using namespace std;
int main(){
int a = 521;//float和double等等一样;
string b;
stringstream s;
s << a;
s >> b;// 写b= s.str();也可以
cout<<b<<endl<<a;
return 0;
}
*C语言中推荐使用atoi,atof,atol,itoa,ltoa;
字符串转化为数字atoi,atof,atol
#include<stdio.h>
#include<stdlib.h>
int main(){
char *a="521";//这里必须是字符数组
int b=atoi(a); //float和double同理
printf("%d",b*2);
return 0;
}
数字转化为字符串:itoa,ltoa
#include<stdio.h>
#include<stdlib.h>
int main(){
int a=521; //long 同理
char *b;
itoa(a,b,10);
printf("%s",b);
return 0;
}