gpt4 book ai didi

C++ vector 段错误

转载 作者:太空宇宙 更新时间:2023-11-04 14:37:59 26 4
gpt4 key购买 nike

我在以下代码中不断遇到段错误!谁能解释发生了什么?

#include <iostream>
#include <sstream>
#include <string>
#include <vector>

using namespace std;

int main()
{
string line;
getline(cin, line, '\n');
istringstream iss(line);
vector<string> result;

for(string token; getline(iss, token, ' '); )
{
//if(token.empty()) continue;
result.push_back(token); // << Segfaults here
}

for(int i = result.size()-1; i>=0; i++)
{
cout << result[i] << ' ';
}

return 0;
}

最佳答案

  for(int i = result.size()-1; i>=0; i++){

你的循环不会停止。

也许你想要:

for(int i = result.size()-1; i >= 0; i--)

或者,更好的是:

for(auto i = result.rbegin(); i!= rend(); i++) {
cout << *i << ' ';
}

关于C++ vector<string> 段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29557465/

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