[問題] 不用srand(time(0)) 取亂數的方法

看板C_and_CPP作者 (蒜˙遠古)時間13年前 (2011/01/19 16:19), 編輯推噓1(1010)
留言11則, 5人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) dev-C++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) VusualBoyAdvance開發相關(GBA模擬器) 問題(Question): 是這樣的,我跟朋友合作一個簡單的GBA遊戲(貪食蛇= =) 食物是要random出現的 我負責C++的code,他負責轉成GBA可用的東西 (據說有一個compiler可以直接轉,但GUI的部分要用不同的flag去定義) However,剛發現那個模擬器裡沒有時間的概念 也就是time(NULL)只會傳零回來,所以不能拿它丟給srand。 那有沒有其他參數可用呢? 例如可以直接拿program counter之類的?! (p.s.核心處理是用arm) 謝謝 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.251.47

01/19 16:32, , 1F
用CPU運算的時間差取亂數
01/19 16:32, 1F

01/19 17:43, , 2F
呃 沒有時間概念怎麼算時間差...
01/19 17:43, 2F

01/19 17:44, , 3F
讓user隨便點螢幕幾下用座標當seed?
01/19 17:44, 3F

01/19 17:44, , 4F
看看有沒有 /dev/random 可以用?
01/19 17:44, 4F

01/19 17:51, , 5F
樓上那個好像也沒有@@"
01/19 17:51, 5F

01/19 17:52, , 6F
對了,process id也可以當亂數種子,使用getpid()取得
01/19 17:52, 6F

01/19 17:52, , 7F
剛剛又突然想到可以呼叫arm函式直接去叫stack上沒人
01/19 17:52, 7F

01/19 17:53, , 8F
用的數XD
01/19 17:53, 8F

01/19 17:53, , 9F
getpid!!! 好我試試看!
01/19 17:53, 9F

01/19 17:53, , 10F
謝謝大家的推文討論回答:)
01/19 17:53, 10F

01/19 20:04, , 11F
一開始的時候紀錄時間,等使用者按下START的時候取亂數?
01/19 20:04, 11F
文章代碼(AID): #1DDfwWtN (C_and_CPP)