STL中 string和int的相互转化

Int转化为String:

.利用的sprintf.

int aa=100;

char tmp[256];
sprintf(tmp,"%d",aa);//sprintf把数字转化成char

string str=tmp;//把char字符串赋值给str

String转化为int

 利用的sscanf

 char str[] = "15.455";
int i;
float fp;
sscanf( str, "%d", &i ); // 将字符串转换成整数 i = 15
sscanf( str, "%f", &fp );


:还可以用中的stringstream来完成转换,但在大数据中效率不如sprintf和sscanf.

int main()
{
stringstream stream; //声明一个stringstream变量
int n;
string str;

//string转int
stream << "1234"; //向stream中插入字符串"1234"
stream >> n; //从stream中提取刚插入的字符串"1234" 并将其赋予变量n完成字符串到int的转换
cout << n << endl; //输出n
stream.clear(); //同一stream进行多次转换应调用成员函数clear 


//int转string

stringstream stream2;//注意一次转换用一个不同的流
stream2 << 1234; //向stream中插入整型数1234
stream2 >> str; //从steam中提取刚插入的整型数 并将其赋予变量str完成整型数到string的转换
cout << str << endl; //输出str
return 0;
}

你可能感兴趣的:(STL容器)