Я новичок в программировании на C++, и когда я запускаю это, он успешно компилируется и выводит элементы массива, но я получаю сообщение об ошибке «векторный индекс вне диапазона». Что не так с этим кодом? Я рассмотрел некоторые другие вопросы, и похоже, что ни у кого из них не было подобных примеров векторов.Ошибка в индексе вне диапазона?
#include <iostream>
#include <vector>
#include <random>
#include <time.h>
using namespace std;
int main() {
srand(time(NULL));
int arraysize;
cout << "Enter the size of your array:" << endl;
cin >> arraysize;
vector<int> numbers(arraysize);
vector<int>::size_type sizecheck = numbers.size();
cout << "This is the unsorted array:" << endl;
for (int z = 0; numbers[z] < sizecheck; z++)
{
numbers[z] = rand() % 10 + 1;
cout << numbers[z] << endl;
}
return 0;
}
Попробуйте заменить 'for (int z = 0; numbers [z]
Galik
Проблема с вашим кодом в том, что: [вы использовали] векторный индекс [который] вне диапазона – thang
Это означает, что указатель, который вы предоставили вектору '[z]', слишком велик. –