簡體   English   中英

沒有種子()的rand()的第一次調用->相同的數字?

[英]First call of rand() without seed() --> same number?

我正在尋找可用於多個操作系統的ac程序,這些程序在平台之間對於完全相同的數據會產生不一致的結果。 因為我缺少一些可以在系統上進行編譯和調試的庫。

我注意到它在初始化期間調用了rand()而不調用srand(),可能是因為它只需要1個隨機值。 現在,我想知道rand()在這種情況下的行為如何? 它是否需要隨機庫的操作系統初始值? 我目前希望這可以解釋每個平台的不同結果,但是我缺乏rand()的背景知識以及如果不使用srand()調用會發生什么情況。

如果它總是返回操作系統的default-init值,它將解釋為什么不同的平台會產生不同的結果。

謝謝任何輸入,對理論問題感到抱歉-無代碼^^。

rand()的聯機幫助頁中:

如果沒有提供種子值,則rand()函數將自動以1值作為種子。

因此,在給定的系統中,它將始終為您提供相同的順序。 但是,即使種子是相同的,不同的平台也可能實現不同的隨機生成器,從而產生不同的序列。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM