c++ split(getline實現)

衆所周知ios

c++中string沒有自帶的split函數(虧你仍是老大哥)c++

網上關於split函數的優秀寫法不少函數

本人再也不贅述spa

今幾日翻C++API時發現了getline一個有趣的方法code

istream& getline (istream& is, string& str, char delim);

 

第一個參數是一個輸入流,第二個參數是一個對字符串的常引用,第三個參數是分割符。blog

在讀入時遇到分割符則中止字符串

能夠用這個來實現單分割符的split功能get

 1 #include <iostream>
 2 #include <string>
 3 #include <sstream>
 4 using namespace std;
 5 
 6 int main() {
 8     stringstream input("45,65,45231,4646,4564");
 9     string str;
11     while (getline(input, str, ',')) {
12         cout << str << endl;
13     }
15     return 0;
16 }

 

 

簡單方便快速。 input

相關文章
相關標籤/搜索