#include<iostream>
using namespace std;
#include<string>
#include<queue>
#include<vector>
int main()
{
string str = "He loves her";
vector<queue<char>> vs;
int sz = str.size();
int i = 0, count = 0;
while (i < sz) {
while (str[i] != ' ') {
vs[count].push(str[i++]);
}
count++;
i++;
}
}
提示segmentation fault
string str = "He loves her";
int sz = str.size();
vector<queue<char>> vs(sz);
int i = 0, count = 0;
while (i < sz) {
while (str[i] != ' ') {
vs[count++].push(str[i++]);
}
//count++;
}
#include <iostream>
using namespace std;
#include<string>
#include<queue>
#include<vector>
int main()
{
string str = "He loves her";
vector<queue<char>> vs(100); //要指定最大容量
int sz = str.size();
int i = 0, count = 0;
while (i < sz) {
while (str[i] != ' ') {
vs[count].push(str[i++]);
if(i>=sz) //这里要增加判断,否则i>=sz后下次循环str[i]会越界错误
break;
}
count++;
i++;
}
return 0;
}