使用空格对子串进行分割
一共两种方法
手动while循环
自动 ,使用stringstream头文件中的stringstream对字符串进行分割。
#include<cstring>
#include<vector>
#include<iostream>
#include<sstream>
using namespace std;
int main()
{
vector<string> vec;
vector<string> vec2;
string s;
getline(cin,s);
int i=0;
int j=0;
int begin=0;
int end;
while(i<s.length())
{
while(s[i]==' ')
{
i++;
}
begin = i;
end = i;
while(s[end]!=' ')
{
end++;
i++;
}
string ns = s.substr(begin,end-begin+1);
vec.push_back(ns);
}
cout<<"手动分割"<<endl;
for(int i=0;i<vec.size();i++)
{
cout<<vec[i]<<endl;
}
cout<<"使用stringstream自动分割"<<endl;
string result;
stringstream input(s);
while(input>>result)
{
vec2.push_back(result);
}
for(int i=0;i<vec2.size();i++)
{
cout<<vec2[i]<<endl;
}
return 0;
}