gdb 基本用法小結

2021-06-01 20:37:17 字數 828 閱讀 5355

1. 當程式出錯並產生core 時快速定位出錯函式的辦法

gdb 程式名 core檔名(一般是core,也可能是core.***x)

2. 除錯程式使用的鍵

rrun

執行.程式還沒有執行前使用

c            

cuntinue  

執行到下一斷點處

qquit                       

退出tab

tab命令補全功能

h   

help幫助s

step

跟入函式

nnext

執行下一行的**。如果是函式呼叫,也當作一行**,執行到此函式返回

b   

breakpoint

設定斷點,用法:(1)b 函式名 (2)b 檔名:行號

info b

info breakpoints

檢視斷點數

deldelete

刪除斷點:delete 斷點號

l list

列出**行。一次列10 行。 也可在 list 後面跟上 檔名:行號

watch

watch

觀察乙個變數的值。每次中斷時都會顯示這個變數的值

what

what

顯示變數的型別

pprint

列印乙個變數的值。print 也可改變乙個值,通過指令 p b = 100,變數b 的值就變成100了

start

start

從主函式 main 開始執行除錯

finfinish

執行直至當前函式返回

gdb用法小結

設定斷點 b reak filename func b reak filename line r un d elete breakpoints s tep n ext t break finish cdpwd btup down watch rwatch awatch info watchpoint...

GDB 基本用法

在原來的的選項上再加上 g 選項,如 gcc g wall o2 o test test.c 或者 gcc g o test test.c。有一點需要注意的是除錯時最好去掉優化選項,比如內聯 inline 函式 優化 去掉函式呼叫,而將函式 在呼叫的位置展開 該函式名上就無法設定斷點。這是因為內聯函...

GDB基本用法

相關 gdb的使用 當程式出錯並產生core 時 快速定位出錯函式的辦法 gdb 程式名 core檔名 一般是core,也可能是core.x 除錯程式使用的鍵 r run 執行.程式還沒有執行前使用 c cuntinue 繼續執行。執行中斷後繼續執行 q 退出 kill 終止除錯的程式 h help...