第4章 除錯工具gdb

2021-04-29 14:00:14 字數 695 閱讀 6135

命令:

gdb test4_1

(gdb)break main //設定斷點

(gdb)break 要設定斷點的行號

(gdb)run

(gdb)step

(gdb)print 要列印的表示式的值

(gdb)display 要列印的表示式的值  //每當程式執行到斷點處就會顯示該表示式的值

(gdb)s  //step命令的快捷鍵

(gdb)next //不進入程式

(gdb)quit //退出gdb

(gdb)backtrace  //檢視函式呼叫棧資訊

(gdb)bt  //檢視函式呼叫棧資訊

要檢視某一層的資訊,需要切換當前的棧。一般來說,程式停止時,最頂層的棧就是當前棧,如果要檢視棧下面層的詳細資訊,首先要做的是切換當前棧。

frame

f info frame

info   //顯示出更為詳細的當前棧層的資訊

info args //當前函式的引數名及值

info locals //當前函式中所有區域性變數及值

info catch //當前函式中的異常處理資訊

info registers //檢視暫存器的值

修改變數值:使用print命令

(gdb) print x = 4

(gdb) set var width = 47

除錯工具 gdb

gcc o a.out a.c gdb q a.out break main info register i r objdump d a.out grep a20 main.轉換為機器 objdump m intel d a.out grep a20 main.gdb 設定 1 gdb q 2 se...

gdb除錯工具

檢視幫助一是man 命令,二是進入 www.gnu.org 找到gdb的幫助文件 更詳細 gcc wall g main.c o main,只有這樣才能產生除錯資訊,包括core的除錯資訊。一 常用命令 run r 執行,執行到斷點,重新用r,表示重新開始執行。list l 列出源 l 2,l ma...

GDB除錯工具

mascot 射水魚 gdb官網 gdb適用的程式語言 ada c c objective c pascal 等。gdb的工作方式 本地除錯和遠端除錯。目前release的最新版本為8.0,gdb可以執行在linux 和windows 作業系統上。1.1 what is gdb?1 gdb gnud...