c++ stringstream
stringstream 位于标准库<sstream>中,使用前需要include;
这里记录了stringstream两个应用,一个是类型的转化,另一个可以用来分割字符串,实现split功能;
下面是记录:
- 类型的转化;
使用stringstream可以实现各种类型间的相互转化;
操作与一般输入输出流相同,使用>>与<<控制输入输出流向;
1 stringstream ss;
2 string b;
3 int i=123;
4
5 ss<<i;
6 ss>>b;
7
8 //此时b输出为123;
应该注意的是,在用同一个stringstream变量进行两次以上的转化时,需要使用ss.clear()进行重制,否则输出的结果会有错误;
另外还需要注意内存的释放,在多次使用后,注意使用ss.str("")清空内存,用.clear()仅仅是重制;
2.stringstream和getline()实现分割split功能;
c++里没有像python等语言里的split函数,这两搭档就可以实现split函数,很方便;
使用样例:
string s="wzm/123/zms/"
stringstream ss(s);
string temp;
while(getline(ss,temp,'/'))//可以控制分隔符
cout<<temp<<endl;
//此时输出为
//wzm
//123
//zms