gpt4 book ai didi

c++ - 这段代码有什么问题,它崩溃了

转载 作者:行者123 更新时间:2023-11-28 02:19:30 24 4
gpt4 key购买 nike

#include <iostream>
#include <vector>

using namespace std;

int main()
{
vector < long long > arr;
arr[0] = 1;
arr[1] = 2;
long long sum = 0;
int i = 2;

do
{
arr[i] = arr[i - 1] + arr[i - 2];
if (arr[i] % 2 == 0)
sum += arr[i];
++i;
} while (arr[i] < 4000000);

cout << sum << endl;

return 0;
}

只使用 vector 和 long long 作为对象类型。什么都不打印并崩溃。为什么?我需要调整数组的大小,还是其他问题。请帮助我。

最佳答案

vector < long long > arr;不会为您的变量分配任何空间。它只是声明一个 vector 。要么使用 arr.resize(MAX_SIZE); , 其中MAX_SIZEi 的某个最大值你永远不会穿过,或使用arr.push_back(...)而不是 arr [ ... ] = ...

关于c++ - 这段代码有什么问题,它崩溃了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33038488/

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