我注意到,那個標準的rand()函數在Windows和Linux上給出了不同的結果。當然我使用了相同的種子編號(1234)。這裏有幾首結果:Windows和Linux上不同的rand()結果
WIN:4068 213 12761 8758
LIN:479142414 465566339 961126155 1057886067
我的應用程序需要兩個平臺產生相同的輸出。 我有什麼選擇?是否有任何替代rand()符合我的要求?
謝謝
PS。我在Windows7上使用了MSVC 2008,而在CentOS 5.5上使用了gcc 4.1.2。
爲什麼你需要隨機數字在不同平臺上是相同的?畢竟,這不是非常隨意的 - 你想達到什麼目的? – 2010-10-18 12:26:05
@EamonNerbonne可能的場景:在linux和cygwin下開發的應用程序,並通過隨機測試進行測試。每次測試都會打印種子。如果測試發現錯誤情況,可以在種子的幫助下重現錯誤情況。如果你想調試linux和cygwin上的錯誤情況,如果'rand'會在linux和cygwin下返回相同的隨機序列將會非常好。 – Tobias 2017-12-11 08:48:37