1 string和double、int等类型互转
C++11中提供了string和double、int等类型相互转换的函数,具体如下:
string转double、int等
// string转int类型
int i = stoi(s); // s为string类型
// string转double类型
double d = stod(s);
// string转long类型
long l = stol(s);
// string转float类型
float f = stof(s);
double、int等转string
// val类型可以为int、double、long等任何算术类型
string s = to_string(val);
2 char*和double、int类型互转
char*转double、int等
#include <stdlib.h>
// char*转int
int i = atoi(c); //c为char*类型
// char*转double
double d = atof(c);
// char*转long
long l = atol(c);
double转char*
可以使用sprintf函数,具体见:double 与 char* 的相互转换
char str[256];
sprintf(str, "%.6lf\t", d); // d为double类型