用getline分割字符串


使用getline和stringstream分割字符串:

 1 #include <iostream>
 2 #include <string>
 3 #include <sstream>
 4 #include <vector>
 5 
 6 using namespace std;
 7 
 8 int main()
 9 {
10     string s;
11     getline(cin,s);
12     stringstream ss(s);
13     vector<string> vs;
14     while(getline(ss,s,' ') ) // 這里只能使用單字符,不能使用字符串“”此類
15     {
16         cout << s << "-";
17         vs.push_back(s);
18     }
19     cout << endl;
20     for(auto x:vs)
21     {
22         cout << x << " ";
23     }
24     cout << endl << vs.size() << endl;
25     return 0;
26 }

輸入:  1 2 3 4 5 

輸出:

 -1-2-3-4-5-
  1 2 3 4 5
 6

可知其遇到一個空格則認為有一個元素,而不管空格前是否有字符。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM