linux gdb除錯工具基礎指令

2021-10-10 06:12:06 字數 1072 閱讀 8580

-g 使用該引數編譯可執行檔案,得到除錯表(內含除錯資訊)

​ 例:gcc gdbtest.c -o gdbtest-g

gdb 執行檔案(進入除錯模式)

​ 例: gdb gdbtest

l/list n:從第n行開始列出原始碼(不寫n預設為1),根據原始碼指定行號設定斷點 。

b n:在第n行設定斷點

run/r:執行程式

n/next:下一條指令(會越過函式)

s/step:下一條指令(會進入函式)

例:

int a[10]

=;selectsort

(a);

//在該行按下n,會進入for迴圈,按下s會進入selectsort()函式

for(

int i=

0;i<

10;i++

)

p/print i:檢視某變數i的值。

例:

int a[10]

=;selectsort

(a);

for(

int i=

0;i<

10;i++

)//在該行 輸入 p i ,會顯示此時i的值為多少

continue:繼續執行斷點後續指令。

quit:退出當前除錯

run:使用run查詢段錯誤出現位置。

finish:結束當前函式呼叫,返回函式呼叫點

set args: 設定main函式命令列引數 (在 start、run 之前)

run 字串1 字串2 …: 設定main函式命令列引數

info b: 檢視斷點資訊表

b 行數 條件:設定條件斷點。

​ 例:b 20 if i = 5

ptype a:檢視變數a的型別。注:ptype只能用於查詢該棧幀上的變數型別

bt:列出當前程式正存活著的棧幀。

frame: 根據棧幀編號,切換棧幀。

display:設定跟蹤變數

undisplay:取消設定跟蹤變數。 使用跟蹤變數的編號。

Linux gdb除錯工具常見引數

1.常用引數 g 使用該引數編譯可執行檔案,得到除錯表。gdb a.outl list 列出原始碼,根據原始碼指定行號設定斷點。list 1b 在指定行設定斷點。b 20r run 執行程式。n next 下一條指令 會越過函式 s stop 下一條指令 會進入函式 p print p i 檢視變數...

除錯工具 之Python除錯工具pycharm

1 pycharm的安裝 pycharm是一款非常好用的python ide,提供專業版和社群版,就像eclipse和myeclipse一樣,專業版是收費的,而社群版是免費的但功能就沒有專業版的功能強大。1.2 安裝 這裡就不必細說,直接next就ok ps 安裝完成後一定要執行 1.3 破解 採用...

Linux基礎入門 GDB除錯工具

gnu的偵錯程式稱為gdb,該除錯工具是乙個互動式工具,在字元模式下工作。gdb作為功能強大的除錯工具,可完成如下的除錯任務。1 設定斷點 2 監視程式變數的值 3 程式的單步執行 4 修改變數的值 為了使用gdb除錯工具,在編譯原始檔時必須使用 g選項 即gcc c g c 加上除錯資訊。另外使用...