gdb 除錯c c 的一些小技巧

2022-03-27 11:21:59 字數 499 閱讀 8772

ptype obj/class/struct

檢視obj/class/struct的成員,但是會把基類指標指向的派生類識別為基類

set print object on

這個選項可以看到派生物件的真實類名,雖然ptype也可以列印出物件

set print pretty on

以樹形列印物件的成員,可以清晰展示繼承關係,設定為off時物件較大時會顯示「一坨」

如除錯mysql item類的派生類物件時會這樣顯示:

用比較規整的格式來顯示虛函式表

set print object on

set print pretty on

gdb除錯的一些技巧

雖然list已經很方便了,但還是不盡人意.如果能夠在執行的同時顯示 就好了,答案是肯定的.使用如下命令啟動gdb gdb tui main或者在啟動gdb後,輸入命令focus或layout linux下,程式出現崩潰都會在可執行檔案的目錄生成core檔案,此時可以使用core檔案檢視崩潰時的呼叫堆...

一些小技巧

關注 乙個好的程式設計師不應該把所有的判斷交給編譯器和偵錯程式,應該在程式中自己加以程式保護和錯誤定位,具體措施包括 對於所有有返回值的函式,都應該檢查返回值,除非你確信這個函式呼叫絕對不會出錯,或者不關心它是否出錯。一些函式返回錯誤,需要用其他函式獲得錯誤的具體資訊。例如accept返回inval...

一些小技巧

protected void repparent itemdatabound object sender,system.web.ui.webcontrols.repeateritemeventargs e 在父datalist的itemdatabound事件裡面寫子datalist的資料來源 繫結 ...