有時候我的應用程序中的某些代碼部分損壞了堆棧。但問題只會在一段時間後才能看到。所以我們無法確定問題的確切位置。是否有任何工具可以在破壞堆棧後立即檢測C++應用程序中的堆棧損壞?檢測到堆棧損壞
是否有任何windbg工具來識別此?
有時候我的應用程序中的某些代碼部分損壞了堆棧。但問題只會在一段時間後才能看到。所以我們無法確定問題的確切位置。是否有任何工具可以在破壞堆棧後立即檢測C++應用程序中的堆棧損壞?檢測到堆棧損壞
是否有任何windbg工具來識別此?
編譯與/RTCs
,它啓用堆棧幀運行時錯誤檢查。請參閱/RTC (Run-Time Error Checks)。
腐敗總是發生在同一個地方嗎?如果是這樣,您可以輕鬆地使用調試器來設置觀察點,以檢測該位置的寫入操作,並查看誰在執行損壞操作。有時,分析破壞堆棧的數據也可以幫助你 - 例如,如果它是一個字符串,你可能能夠縮小正在寫入它的代碼。
應用程序在不同點崩潰。 – Maanu 2011-05-05 17:01:41
請參閱http://stackoverflow.com/questions/413477/is-there-a-good-valgrind-substitute-for-windows – jlew 2011-05-05 17:02:56