数字转字符串:
itoa(int1, char*, int2); //将int1以int2进制存储在char*数组里
ltoa(long, char*, int); //将long以int进制存储在char*数组里
ultoa(unsigned long, char*, int); //将unsigned long以int进制存储在char*数组里
gcvt(float, int, char*);
//将float保留int位有效数字存储在char*数组里,四舍五入,科学计数法,注意如果是3,两位及以上有效数字会转化成3.,多一个小数点
char*=ecvt(double, int, int*1, int*2);
//将double的整数部分和int位小数去掉小数点存储在返回值char*里,返回的int*1是小数点位置,返回的int*2是0表示正数,1表示负数
//超出int位的部分不补零
char*=fcvt(double, int, int*1, int*2);
//将double的整数部分和int位小数去掉小数点存储在返回值char*里,返回的int*1是小数点位置,返回的int*2是0表示正数,1表示负数
//超出int位的部分补零
数字转string:
int x=3;
string str=to_string(x); //若改成float或者double结果会自动保留6位小数,但只要是整数都没问题,所以时间允许的话更推荐下面这种方法
double d=3.5;
stringstream ss;
ss<<d;
string s=ss.str();
ss.clear(); //clear才能使答案正确
ss.str(“”); //重新赋值优化空间
字符串转数字:
int=atoi(char*); //把char*转化为int
long=atol(char*); //把char*转化为long
double=atof(char*); //将char*转化为double
字符串转string:
string str;
str.assign(char*, int); //从char*开始的int个字符赋值给str,若省略int这个参数,则默认赋值到最后
string转数字:
int x;
stringstream ss;
string str;
ss.str(str);
ss>>x;
string转字符串:
string str;
char*=str.c_str();