具有相同种子的 rand() 函数是否会在不同的 PC 上给出相同的随机数?
Does rand() function with the same seed gives the same random numbers on different PC's?
我想知道我是否会在使用相同 srand() 种子的所有计算机上获得相同的随机数。
如果没有,我该如何实现。
没有。 rand
实现未标准化,不同的编译器供应商可以并且将会使用不同的算法。
您可以使用来自 C++11 <random>
header 的生成器,它们是标准的且完全确定的:例如,具有相同种子的 mt19937
应该在所有平台上给出相同的序列。
我想知道我是否会在使用相同 srand() 种子的所有计算机上获得相同的随机数。
如果没有,我该如何实现。
没有。 rand
实现未标准化,不同的编译器供应商可以并且将会使用不同的算法。
您可以使用来自 C++11 <random>
header 的生成器,它们是标准的且完全确定的:例如,具有相同种子的 mt19937
应该在所有平台上给出相同的序列。