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

相关文章
相关标签/搜索