Каждый раз, когда я запускаю этот код, он возвращает это значение: 1804289383 Если я перемещаю тело random() внутри main(), он работает просто отлично.Почему этот случайный генератор не работает?
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
int random(int);
int main()
{
cout << random();
cin.get();
return 0;
}
int random(int)
{
unsigned seed = time(0);
srand(seed);
int randomNum = rand()%4 + 1;
return randomNum;
}
Прежде всего: 'int random (int);' несовместим с вашим вызовом функции 'random()', и ваша реализация не реализует параметр. – antonijn
Включите предупреждения компилятора, и вы увидите проблему. –
[http://xkcd.com/221/](http://xkcd.com/221/). –