在C++中,可以使用std::srand()
函数设置随机数生成器的种子。通常情况下,可以使用系统时间作为种子,这样每次运行程序时种子都会不同,从而使得生成的随机数序列也不同。
以下是一个示例代码,演示如何使用系统时间作为种子来更新随机数生成器:
#include <iostream>
#include <cstdlib>
#include <ctime>
int main() {
// 使用系统时间作为种子
std::srand(static_cast<unsigned int>(std::time(nullptr)));
// 生成随机数
for (int i = 0; i < 10; ++i) {
std::cout << std::rand() << std::endl;
}
return 0;
}
在上面的示例中,std::time(nullptr)
函数返回当前系统时间的秒数,然后将其转换为unsigned int
类型,并作为参数传递给std::srand()
函数,从而更新了随机数生成器的种子。接着通过std::rand()
函数生成了10个随机数并输出到控制台。由于每次运行程序时种子都会不同,因此生成的随机数序列也会不同。