[問題] 請問一個新手該如何根據錯誤訊息Debug?

看板C_and_CPP (C/C++)作者 (一3一)時間16年前 (2010/02/19 16:51), 編輯推噓4(408)
留言12則, 5人參與, 最新討論串1/1
請問當你們遇到這樣的錯誤訊息,會從哪個地方下手去Debug呢?? Error: CWinThread::PumpMessage called when not permitted. HEAP[MyProject.exe]: HEAP: Free Heap block 526290 modified at 526488 after it was freed Windows 已經觸發 MyProject.exe 的中斷點。 可能是因為堆積損毀,這也表示 MyProject.exe 中有錯誤,或是其載入的任何 DLL 中有錯誤。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.127.34.217

02/19 17:05, , 1F
照訊息來看, 就從有用到malloc/free或new/delete的地方
02/19 17:05, 1F

02/19 17:06, , 2F
下手吧, 尤其是free/delete以後的pointer是不是還有去對
02/19 17:06, 2F

02/19 17:06, , 3F
它做讀寫動作的....
02/19 17:06, 3F

02/19 18:16, , 4F
把錯誤訊息丟到 Google 查就好了 :)
02/19 18:16, 4F

02/19 20:04, , 5F
挖 還有這招歐...我都傻傻的翻英文..
02/19 20:04, 5F

02/19 20:13, , 6F
翻英文?? 是查類似的經驗不是查翻譯吧?_?
02/19 20:13, 6F

02/19 20:29, , 7F
囧~~~我知道了 Orz
02/19 20:29, 7F

02/20 10:29, , 8F
謝謝!!我也有丟到google查過了,但就是歸納不出問題點
02/20 10:29, 8F

02/20 10:30, , 9F
我會再仔細對所有有用到malloc與free的部分
02/20 10:30, 9F

02/20 11:40, , 10F
寫一行malloc 馬上就去安排其free動作
02/20 11:40, 10F

02/20 11:43, , 11F
指標初始都設NULL 讀寫前都先判端!=NULL
02/20 11:43, 11F

02/20 11:43, , 12F
if(ptr) {free(ptr);ptr=NULL}
02/20 11:43, 12F
文章代碼(AID): #1BVb4F6g (C_and_CPP)
文章代碼(AID): #1BVb4F6g (C_and_CPP)