gdb調試
編譯時必須加-g選項,如果想去掉符號表strip a.out
gdb ./a.out
調試core文件 gdb a.out core.111
運行
r(run) 開始運行
r argv[1] argv[2]//命令行參數
c(continue):繼續執行到下一斷點
n(next):單步調試,不進函數
s(step):進入函數
斷點
b n
b func 在函數入口處設置斷點
delete n 刪除第幾個斷點
info b 查看斷點情況
delete breakpoints 清楚所有斷點
查看源代碼:
list 每次10行
l func 顯示函數名源代碼
l 行號 以行號爲中心前後10行代碼
打印:
p a 打印整數a
display a 單步時每次都打印a的值
watch a a的值改變了就停止
bt 顯示當前堆棧
ctrl+L :刷新窗口
交互模式下直接回車的作用是重複上一指令