我学习的方法是初始播种随机数生成器,srand(time(NULL))然后使用调用rand()生成随机数.这种方法的问题是如果我在同一秒内多次运行我的程序,生成的随机数将始终相同.这有什么好办法?
除了使用时间之外,另一种常见的 rand 函数种子方法是使用程序的进程 ID,因为它保证是唯一的。
实际的代码是依赖于平台的,但如果你在 Windows 上,我相信你可以使用该函数GetCurrentProcessId(),如下所示
srand(GetCurrentProcessId());
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12793 次 |
| 最近记录: |