info registers
檢視暫存器的情況。(除了浮點暫存器)
info all-registers
檢視所有暫存器的情況。(包括浮點暫存器)
info registers ebp
檢視所指定的暫存器的情況。
disassemble func
gcc -g -fno-stack-protector test.c -o test
用gdb檢視記憶體
格式: x /nfu
說明x 是 examine 的縮寫
n表示要顯示的記憶體單元的個數
f表示顯示方式, 可取如下值
x 按十六進製制格式顯示變數。
d 按十進位制格式顯示變數。
u 按十進位制格式顯示無符號整型。
o 按八進位制格式顯示變數。
t 按二進位制格式顯示變數。
a 按十六進製制格式顯示變數。
i 指令位址格式
c 按字元格式顯示變數。
f 按浮點數格式顯示變數。
u表示乙個位址單元的長度
b表示單位元組,
h表示雙位元組,
w表示四位元組,
g表示八字節
$gcc -g test.c -o test -- 除錯編譯
$gdb -- 啟動gdb
(gdb)file test -- 開啟被除錯檔案test
(gdb)b 10 -- 在第10行設定斷點
(gdb)b func -- 在函式func處設定斷點
(gdb)clear -- 清除所有斷點
(gdb)r -- 執行
(gdb)c -- 繼續執行
(gdb)n -- 執行下一條語句
GDB除錯程式
gdb的三個功能 1 啟動被除錯的程式 2 設定斷點 3 設定斷點之後可以檢查程式的狀態 1.編譯生成可執行檔案 注意 g 除錯選項 gcc g tst.c o tst 2.啟動gdb gdb tst 3.在main函式處設定斷點 break main 4.執行程式 run5.利用 更加豐富的 gd...
gdb除錯程式
除錯是每個程式設計師都會面臨的問題.如何提高程式設計師的除錯效率,更好更快地定位程式中的問題從而加快程式開發的進度,是大家共同面對的問題.可能windows使用者順口就會說出 用vc唄 它提供了設定斷點,單步跟蹤等的圖形介面,使除錯起來直觀易用.但linux使用者可能要生悶氣了 o 難道我們linu...
GDB除錯程式
gdb是gnu發布的一款功能強大的程式除錯工具。主要功能 1.啟動被除錯程式。2.讓被除錯程式在指定位置停住。3.當程式被停止時,可以檢查程式狀態 如變數值 編譯生成可執行程式一定要加 g選項 gcc g test.c o test 啟動gdb gdb 可執行程式名 gdb test 在main函式...