衆所周知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