gpt4 book ai didi

c++ - 在 C++ 中使用 srand()

转载 作者:可可西里 更新时间:2023-11-01 16:28:23 25 4
gpt4 key购买 nike

我是 C++ 的新手,所以这个疑问可能看起来很基本,但我不明白 rand() 和 srand() 之间的区别,以及 srand() 中的“种子”是什么意思?当我写srand(time(NULL))时,它生成随机数是做什么的,time(NULL)在这里做什么?还有,这是什么?提前致谢

最佳答案

随机数生成器需要一个数字(称为种子)来生成随机数。如果随机数生成器被赋予相同的种子,那么每次它都会生成相同的随机数序列。例如:-

如果您运行该程序,它会生成随机序列 2,78,45,60 。如果您第二次运行该程序,您将再次获得相同的序列 2,78,45,60。

srand 函数用于更改随机数生成器的种子。通过设置 srand(time(NULL)) ,您将随机数生成器的种子设置为当前时间。每次运行时都这样做程序你会得到不同的随机序列:-

例如,如果您获得 2,78,45,60 ,则第一次运行。下次你可能会得到 5,3,6,80(取决于当前时间,因为自从上次运行以来时间已经改变,seed 已经改变)

有关更多信息,请参阅这些:-

http://www.cplusplus.com/reference/clibrary/cstdlib/rand/

http://www.cplusplus.com/reference/clibrary/cstdlib/srand/

http://www.cplusplus.com/reference/clibrary/ctime/time/

关于c++ - 在 C++ 中使用 srand(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5620163/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com