(gdb) watch 表示式設定好檢視的表示式,則可以使程式在表示式成立時終止執行
eg: (gdb) watch counter>15
(gdb) breaktrace
(gdb) bt
該命令列印當前停住地方函式呼叫棧的所有資訊.
(gdb) breaktrace
(gdb) bt
n是乙個正整數,表示可以列印棧頂上的n層資訊
(gdb) breaktrace <-n>
(gdb) bt <-n>
-n表示乙個負整數,列印棧底n層資訊
(gdb) frame
(gdb) f
當需要檢視某一層棧的具體資訊的時候,需要切換棧,還可以使用 (gdb) up / down 來上下移動棧
(gdb) info f
則可以顯示出更為詳盡的當前棧層的資訊
(gdb) info args 顯示當前函式的引數名和值
(gdb) info locals 顯示區域性變數及值
(gdb) info catch 顯示當前函式中的異常資訊
gdb可以列印出****,但是務必在編譯是加上-g選項 ,然後我們使用 (gdb) list 命令即可.
(gdb)
list 行號
(gdb)
list 函式名
(gdb)
list <+offset> 當前行號的正偏移
(gdb)
list <-offset> 當前行號的負偏移
(gdb)
list 檔案的哪一行
(gdb)
list 檔案的函式名
(gdb)
list <*address> 程式執行時的語句在記憶體中的位址.
gdb還可以搜尋
(gdb)
forward-search
(gdb)
search
向前搜尋
(gdb)
reverse-search
全部搜尋
指定原始檔路徑
(gdb)
directory 多個路徑可以使用":"隔開
(gdb) info line 顯示源**在記憶體中的位址.
GDB符號偵錯程式 一
gdb簡單使用 編譯程式時,使用gcc ggdb3 o test test.c可以最大限度的包含除錯資訊。gdb test 然後會出現一串提示,無非就是寫授權介紹類的.然後就是提示符 gdb gdb run 設定斷點後,輸入run直接執行,並且在斷點處停止 gdb break main 在main函...
gdb偵錯程式(二)
gdb除錯命令 l list 檢視程式 l 行號 例 l 10 從第10行開始檢視 l 函式名 指定函式的源 b break 設定斷點 b 函式名 在某函式入口處新增斷點 b 行號 在指定行新增斷點 b 行號 if條件 當條件為真時,指定行號處斷點生效 例 b 5 if i 10,當i 10時第5行...
GDB偵錯程式
偵錯程式gdb 一 啟動和退出gdb gdb除錯的物件是可執行檔案,而不是程式的源 如果要使乙個可執行檔案可以被gdb除錯,那麼在使用編譯器gcc編譯程式時需要加入 g選項。gdb除錯乙個程式的命令格式是 gdb 程式檔名 也可以在linux提示符下,直接輸入gdb,然後使用file命令裝入要除錯的...