a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C > 正文

stringstream操縱string的方法總結

2020-01-26 14:21:32
字體:
來源:轉載
供稿:網友

1 split字符串

之前在用C#寫代碼的時候,用過split函數,可以把一個字符串根據某個分隔符分成若干個字符串數組。在用C++操縱字符串的時候,我一直使用很笨的遍歷的方法。為此,我問候過很多次C++標準委員會。直到某一天,我做了一個處理絕對路徑的題目。

首先,我要把‘/'作為分隔符,把輸入字符串split一下。下面是我的代碼: 

string inputString("/home/fun/./../code/");stringstream ss(inputString);string tmp;while(getline(ss,tmp,'/')){    if(tmp.empty())  continue;    bulabula;       }

神奇的是getline函數,此函數配合stringstream使用,就實現了split函數的功能。簡直歷害!

2 格式化輸入

當我們有一個字符串需要解析的時候,可以使用stringstream。

string inputString("123abc 123.4one two three four");  stringstream ss(inputString);  string s;  int i;  double d;  ss >> i >> s >> d;  cout << i << " " << s.c_str() << " " << d ;  while (ss >> s)    cout <<" "<<s.c_str();  cout << endl;

輸出:

123 abc 123.4 one two three four

是不是很好用呢?不過要注意,當我們使用>>來格式化輸入數值型變量的時候,后面是不需要跟空格的,而使用>>來格式化輸入string或char*的時候,后面一定要跟空格。當然格式化輸入string,我們也可以使用getline(ss,s,' ')。一樣的效果。

有標準庫用的時候,還是要用的,事半功倍!

以上就是小編為大家帶來的stringstream操縱string的方法總結全部內容了,希望大家多多支持武林網~

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 草樱av| 一级毛片视频播放 | 亚洲精品久久久久久久久久久久久 | 成人一二三区 | 国产成人免费网站 | 中文字幕网在线 | 欧美系列第一页 | 丁香婷婷在线观看 | 成人在线国产 | 久久久久久九九九 | 日韩一二三区视频 | 国产精品三区在线 | 国产精品视频一区二区三区 | 亚洲综合在线一区 | 日本免费一区二区视频 | 看片国产 | 久久9色| 波多野结衣av中文字幕 | 97国产在线视频 | 高清av网址 | 婷婷激情综合 | 久久伊人免费视频 | 羞视频在线观看 | 欧美日韩国产在线观看 | 91精品国产精品 | 超碰免费人人 | 欧美一区二区三区视频 | 亚洲精品a | 国产在线视频网站 | 毛片视频免费 | 欧美九九 | 在线国产区 | 日韩av在线免费电影 | 国产精品一区二区在线观看 | 色综合天天综合网国产成人网 | 欧美片网站免费 | 青青草久| 一二三区不卡视频 | 成人欧美一区二区三区白人 | www.视频在线观看 | 日韩精品成人 |