2010-10-10 56 views
3

我在Linux上使用QT Creator開發了一個命令行(非GUI)C程序,該程序在內部使用gdb作爲其調試器。當我使用Visual Studio在Windows上調試程序時,它報告說它正在寫入分配內存的範圍之外(儘管它沒有在發生的確切時間報告違規情況,所以仍然很難追查到)。我最終設法在代碼中找到了一個地方,malloc調用分配的內存太少,解決了問題。在Linux上覆制Visual Studio的內存違規檢測

不過,它困擾我,這個問題在Linux端從未被檢測到。有什麼開關或者什麼東西可以在Linux上啓用這種檢測功能?

回答

3

有許多可用於Windows和Linux的代碼內存驗證程序。檢查Wikipedia的清單。但是,大多數Linux用戶使用Valgrind作爲內存調試的終極工具。