[問題] gcc 最佳化後 改變程式結果
問題(Question):
請問各位大大
如果在程式都沒有錯的前提下
程式內也沒有用到跟時間或是跟亂數有關的函式
對於 gcc 下不下 -O3 這種最佳化參數,有沒有可能會導致程式的結果不一樣?
因為剛剛我發現 我寫的程式
下了 -O0 或 -O1 參數,跟我下了 -O2 或 -O3 參數
結果居然不一致
補充說明(Supplement):
使用的 gcc 版本: gcc version 4.3.2 (Debian 4.3.2-1.1)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.60.254.60
→
02/20 05:48, , 1F
02/20 05:48, 1F
→
02/20 05:59, , 2F
02/20 05:59, 2F
→
02/20 06:04, , 3F
02/20 06:04, 3F
Debug 好久,發現是變數未初始化的問題...
明明知道導致結果變動,大部分是變數未初始化或是dangling pointer 這種低級錯誤
可是偶而還是會粗心寫錯
順便問一下有沒有可以自動偵測這種低級錯誤的工具?
※ 編輯: xxxx9659 來自: 61.60.254.60 (02/20 07:20)
推
02/20 07:29, , 4F
02/20 07:29, 4F
推
02/20 08:55, , 5F
02/20 08:55, 5F
→
02/20 09:48, , 6F
02/20 09:48, 6F
→
02/20 20:31, , 7F
02/20 20:31, 7F
→
02/20 22:14, , 8F
02/20 22:14, 8F
→
02/22 12:30, , 9F
02/22 12:30, 9F
→
02/22 12:31, , 10F
02/22 12:31, 10F
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章