2007年3月14日星期三

c++食谱第三章部分笔记之二

食谱3.2 转换数字为字符串
问题:
有int或者float等数值型,需要转换其为字符串
方案:
使用标准库中的stringstream类


#include<iostream>
#include<iomanip>
#include<string>
#include<sstream>
using namespace std;
int main(){
stringstream ss;
ss<<"There are "<<9<<"apples in my cart.";
cout<<ss.str()<<endl;
ss.str("");
ss<<showbase<<hex<<16;
cout<<"ss= "<<ss.str()<<endl;
ss.str(""):
ss<<3.14;
cout<<"ss= "<<ss.str()<<endl;
}


显示其输出为:
There are 9 apples in my cart.
ss =ox10
ss =3.14
在<iomanip>中定义的许多流操作符在此均可使用,上面代码中使用了showbase,hex俩,
ss<<setprecision(6)<<3.14285;
除此之外,boost库中的format类也可以完成此项工作。

没有评论: