如何在C ++中生成随机数?

时间:2019-12-30 08:15:05

标签: c++

我正在尝试使用view controller来生成随机数。但是,我发现每次编译时,代码始终给出相同的数字。 这是代码:

rand()

2 个答案:

答案 0 :(得分:3)

您可以做的是:#include<time.h>并在主菜单顶部使用srand。这将解决此问题,因为它将为生成器指定种子。

// top of main
srand(static_cast<unsigned int>(time(0)));

time(0)为您提供了自1970年1月1日以来经过的秒数。这提供了一个很好的种子。

如果有时间,请查看<random>标头here

答案 1 :(得分:2)

每次运行文件时,您都必须播种至少1次更改才能获得随机数:

#include<iostream>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{
    srand(time(0));
    int random = rand();
    cout << "Seed = " << time(0) << endl;
    cout << "Random number = " << random << endl;
return 0;
}