GDB 知識點——基礎操作

Linux C 中的 GDB 調試使用:
1、GDB 的主要功能:
1]啓動被調試程序
2]讓被調試的程序在指定的位置停住
3]當程序被停住時,可以檢查程序狀態(如變量的值)
2、檢查 GDB 版本:
gdb --version
3、下載 GDB:
sudo apt-get install gdb
4、編譯產生可調試的可執行文件(編譯一定要加 -g):
gcc -o app test.c -g
gcc -o app test.cpp -g
5、啓動 GDB:
gdb app
gdb ---> file app
gdb program core //用 gdb 查看 core dump 文件,跟蹤程序 core 的原因
gdb pid //用 gdb 調試已經開始運行的程序,指定 pid 即可
6、調試步驟(括號內爲命令簡寫):
1] 命令幫助:
help [cmd]
2] 查看代碼(一次只能查看 10 行):
list(l)
3] 設置斷點:
break(b) 20 //20 行設置斷點
break main //main 函數的入口處設置斷點
break test.c:19 //在 test.c 文件的 19 行設置斷點
break 5 if i=10 //當 i=10 時,第 5 行斷點生效(文件中必須要有 i 變量)
查看斷點:
info break
刪除斷點:
delete(d) 3 //刪除第三個斷點,而不是第三行斷點
4] 運行程序(遇到斷點停下來):
run(r)
5] 繼續運行(遇到下一個斷點停下來):
continue(c)
6] 單步運行(不進入子函數):
next(n)
7] 單步運行(進入子函數):
step(s)
8] 查看變量值:
print(p) i //查看當前 i 的值
9] 運行程序直到當前函數結束:
finish
10] 對指定變量進行監控:
watch i //對 i 變量進行監控
11] 查看函數信息:
call main //查看 main 函數的參數和返回值以及其所在虛擬空間的地址
call p //查看 p 所在虛擬空間的地址和值
7、退出 GDB:
quit(q)
發佈了79 篇原創文章 · 獲贊 56 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章