c++ - Windows 和 Linux 上不同的 rand() 结果

标签 c++ random

我注意到,标准的 rand() 函数在 Windows 和 Linux 上给出了不同的结果。当然,我使用了相同的种子编号 (1234)。以下是几个初步结果:

中奖:4068 213 12761 8758

林:479142414 465566339 961126155 1057886067

我的应用程序要求两个平台产生相同的输出。 我有哪些选择? rand() 有什么好的替代品可以满足我的要求吗?

谢谢

附言。我在 Windows7 上使用 MSVC 2008,在 CentOS 5.5 上使用 gcc 4.1.2

最佳答案

Boost 有一个 wide range of RNGs ,大概具有跨平台的可重现行为。

关于c++ - Windows 和 Linux 上不同的 rand() 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3958795/

相关文章:

c++ - D3D10 HLSL : How do I bind a texture to a global Texture2D via reflection?

c - 使用引擎生成随机数

c++ - 多维字符数组 - 如何用随机字符填充它?

c# Double.MinValue 和 Double.MaxValue 之间的随机数

c++ - 精炼 Haar 检测

c++ - 使用 Xlib 获取应用程序的图标?

c++ - 有没有一种方法可以在不捕获 lambda 变量的情况下编写更短的代码?

c++ - 如何优化默认的 if-branch

c - 为什么 srandom(time(NULL)) 在 main() 函数和用户定义函数中的行为不同?

java - 我怎么能比较Java中的颜色?