Re: [問題] 程式在xcode無誤但在windows下錯誤

看板C_and_CPP作者 (賴賴然)時間13年前 (2011/04/24 20:41), 編輯推噓2(2023)
留言25則, 5人參與, 最新討論串2/2 (看更多)
※ 引述《Minsc (賴賴然)》之銘言: : 開發平台(Platform): (Ex: VC++, GCC, Linux, ...) : Dev C++, NetBeans, VC++ : 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) : 問題(Question): : 我寫了一個讀入矩陣 輸入座標判斷位置 取出矩陣數值的code : 在mac的xcode上執行無誤 試過上述三個IDE 在windows上都錯誤而且結果一樣 : 我include的表頭檔有 iostream fstream math time algorithm vector : 請問有人遇過換作業系統 程式就有問題的嘛 或者上述表頭檔有不相容? 抱歉沒說明清楚 我想我找到問題 但是不知如何解決 srand ( time(NULL) ); double f_G(void) { double r_s = 0; // sum of random number for (int i = 0; i < 20; ++i) { r_s += rand() % 10001; } return r_s/1e4 - 10; } 這個函數輸出的值隨時間變大 同樣的程式 在32bit cpu + XP下無法編譯 64bit cpu + XP下可編譯但有上述問題 所以我猜測是作業系統的問題 感謝 : 餵入的資料(Input): : 預期的正確結果(Expected Output): : 錯誤結果(Wrong Output): : 程式碼(Code):(請善用置底文網頁, 記得排版) : 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 194.36.2.48

04/24 20:42, , 1F
請愛用大E編輯內文
04/24 20:42, 1F

04/24 20:43, , 2F
這跟你原來的問題沒有關係...
04/24 20:43, 2F

04/24 20:43, , 3F
抱歉 不會使用大e 下次會注意
04/24 20:43, 3F

04/24 20:45, , 4F
無法編譯表示資訊很多了, 應該提供一下ERROR MSG
04/24 20:45, 4F

04/24 20:45, , 5F
取出座標後要在加上隨機項 再取下一點 原本應該在之前點附近
04/24 20:45, 5F

04/24 20:47, , 6F
可是應為隨機項變得太大 就會抓錯點
04/24 20:47, 6F

04/24 20:48, , 7F
[Linker error] undefined reference to `__dyn_tls_init_
04/24 20:48, 7F

04/24 20:48, , 8F
[Linker error] undefined reference to `__cpu_features_
04/24 20:48, 8F

04/24 20:49, , 9F
dev c++ 上的錯誤訊息
04/24 20:49, 9F

04/24 20:57, , 10F
有拿他們去 Google 過了嗎? XD
04/24 20:57, 10F

04/24 21:00, , 11F
我想先從可執行但錯誤的先解決 也就是隨機變數隨著時間變大
04/24 21:00, 11F

04/24 21:01, , 12F
先測試 rand() 隨時間的變化, 通常不太可能有錯, 況且
04/24 21:01, 12F

04/24 21:02, , 13F
你又做了 mod, 問題應該不在這邊
04/24 21:02, 13F

04/24 21:05, , 14F
還是要有整篇的code....
04/24 21:05, 14F

04/24 21:06, , 15F
單獨測試rand f_G都沒有問題 但是我有另一個function呼叫它
04/24 21:06, 15F

04/24 21:07, , 16F
此function又被三個迴圈使用 可以po整篇的code嘛?
04/24 21:07, 16F

04/24 21:08, , 17F
要貼長的程式碼,請善用置底文的網站
04/24 21:08, 17F

04/24 21:10, , 18F
我查了一下上面的error 好像是MinGW的問題 = =
04/24 21:10, 18F

04/24 21:12, , 19F
04/24 21:12, 19F

04/24 21:14, , 20F
我也查了 不過可編譯的xp也有隨機變數變大的問題 mac才沒有
04/24 21:14, 20F

04/24 21:15, , 21F
隨機數變大是什麼意思??
04/24 21:15, 21F

04/24 22:24, , 22F
我在CodeBlock, WinXP底下,編譯無誤說…
04/24 22:24, 22F

04/24 22:26, , 23F
執行的話無法驗証就是了,main裡似乎要好幾個.txt檔
04/24 22:26, 23F

04/24 22:56, , 24F
把每個rand()輸出 發現雖然random 可是連續後會不夠random
04/24 22:56, 24F

04/24 22:59, , 25F
也許是不同系統時間種子的問題 unknown... 非常謝謝大家
04/24 22:59, 25F
文章代碼(AID): #1Dj1ffEA (C_and_CPP)
文章代碼(AID): #1Dj1ffEA (C_and_CPP)