c++ stringstream

 

stringstream  位于标准库<sstream>中,使用前需要include;

这里记录了stringstream两个应用,一个是类型的转化,另一个可以用来分割字符串,实现split功能;

 

下面是记录:

 

 

  1. 类型的转化;

 

  使用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

 

posted @ 2018-09-18 19:52  opticor  阅读(323)  评论(0编辑  收藏  举报