官方文件:
100個gdb小技巧:
編譯時帶上除錯資訊: g++ -g test.cpp -o test
啟動程式: gdb test
檢視core 檔案: gdb test corefile
gdb 程序: gdb program pid, 或者先 gdb program, 然後在裡面 attach pid, 用detach 斷開連線
列印源**: l
設定引數: set args 1 2 3
檢視引數: show args
在某一行設定斷點: break 檔名:16
在某個函式設定斷電: break 檔名:函式名
檢視斷點資訊: info break
開始執行: r, 這會在斷點處暫停
執行單條語句: n
進入函式: s
繼續執行: c, 在下乙個斷點處暫停
檢視變數: p i
設定觀察點: watch expr, 一旦expr 表示式的值有變化就會停住程式
設定讀觀察點: rwatch expr, 當expr 變數被讀時停住程式
設定讀寫觀察點: awatch expr, 讀寫都會捕捉
檢視所有的觀察點: info watchpoints
維護停止點: delete clear disable enable 用來修改停止點的狀態
檢視函式堆疊: bt
修改變數: set i=1
退出函式: finish, 這只會退出當前函式, 不會全退出來
強制退出函式: return expr, 會忽略函式剩餘的內容, 強制返回
強制呼叫函式: call func
退出gdb: q
gdb常用命令整理
gdb 常用命令整理 run r 開始執行程式 step s 單步跟蹤 next n 執行下一行 continue c 繼續執行程式 print 表示式 p 表示式 列印變數值 print 變數 表示式 可以對變數賦值 print 開始表示式 要列印的連續記憶體空間的大小 以陣列的形式輸出,第乙個元...
GDB常用命令整理
命令 描述backtrace 或bt 檢視各級函式呼叫及引數 finish 連續執行到當前函式返回為止,然後停下來等待命令 frame f 幀編號 選擇幀棧 info i locals 檢視當前棧幀區域性變數的值 list l 列出源 list 行號 列出從第幾行開始的源 list 函式名 列出某個...
gdb常用命令
gnu的偵錯程式稱為gdb,是乙個互動式的程式,工作在字元模式。其常用命令如下 break num 在指定的行上設定斷點 break 1 bt 顯示函式的呼叫順序 clear 刪除斷點 clear test.c 10 display expr 每次程式停止後顯示表示式的值 printf expr顯示...