以下是本人在做算法题是学习的一个将int/double等数型数据转换为字符型数据的函数模板:
#include<stringstream>;
void i2s(int x,string &s){
sstream ss;
ss<<x;
ss>>s;
}
本代码是将int型的x读入到ss中去,再从ss中写入到s中,最后通过引用对s进行修改。当然如果将x和s的位置进行互换,即将string类型转变为x,但要注意函数传递应是地址传递,引用符号不能忘记。
在《c++ primer》Page.287中提到头文件stringstream即可以从string读数据,也可向string中写数据,但其用途比书中所写更为广泛。
更新:
在最近做题时发现《c++ primer》Page.328有更为直接的方法,即:
to_string(val)//val可以是任意算术类型的值
stoi(s,p,b) //即将string 转换为int