Я тестирую, как это сделать, прежде чем я попытаюсь реализовать его в более крупной программе, которую я должен выполнить, и возникает проблема. Этот код работает отлично, но он продолжает давать только первое число в векторе. Что именно происходит неправильно?Создание случайного числа из вектора в C++
#include <iostream>
#include <string>
#include <vector>
#include "stdlib.h"
#include "time.h"
using namespace std;
int main()
{
int randomNumber;
int length;
int i = 0;
vector<int> x;
x.push_back(12);
x.push_back(1);
x.push_back(6);
x.push_back(34);
x.push_back(23);
srand(time(0));
length = sizeof(x.capacity() - 1)/sizeof(int);
while(i < 10){
randomNumber = x[rand() % length];
cout << randomNumber << endl;
i++;
}
return 0;
}
Это сделало трюк, который я ценю! Разделение на sizeof (int) вызывало проблемы. Я ценю всех парней помощи. – DiamonW