gpt4 book ai didi

c++ - 当我尝试将短语放入 vector 中时,短语的第一个单词被丢弃了?

转载 作者:行者123 更新时间:2023-11-28 00:10:01 25 4
gpt4 key购买 nike

抱歉标题模糊。很难描述。我正在尝试从用户那里获取一个短语并将该短语逐字放入一个 vector 中,以空格分隔。出于某种原因,当打印 vector 时,如果有意义的话,它会完全省略短语的第一个单词。这是我到目前为止的代码:

 void printVector(vector<string>& words){

cout << "Print words: " << endl;
for (int i = 0; i < words.size(); i++){
if (i < words.size()){
cout << words[i] << ", ";
}
else
cout << words[i];
}
cout << endl;
}


int main(){

string phraseInput;
string stop = "done";
do{
cin >> phraseInput;

if(phraseInput == stop){
cout << "Program finished." << endl;
return 0;
}
else {
getline(cin, phraseInput);

istringstream iss(phraseInput);

vector<string> words;
copy(istream_iterator<string>(iss),
istream_iterator<string>(),
back_inserter(words));

printVector(words);
}

}while(phraseInput != stop);
}

最佳答案

这里你输入了两次,只跳过了第一次现在你应该改变这个

     else{ string temp;

getline(cin, temp);
phraseInput+=temp;
istringstream iss(phraseInput);
//.....

关于c++ - 当我尝试将短语放入 vector 中时,短语的第一个单词被丢弃了?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33625206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com