用gdb進(jìn)行斷點(diǎn)調(diào)試
進(jìn)入GDB ——gdb test
查看文件——l
設(shè)置斷點(diǎn) ——b 6
查看斷點(diǎn)處情況 ——info b
運(yùn)行代碼 ——r
查看變量值 ——p n / p i
觀察變量 ——watch n
單步運(yùn)行 ——n
程序繼續(xù)運(yùn)行 ——c
退出GDB ——q
以gbs.c為例
1、 將要編譯的文件編譯成可執(zhí)行文件要加-g參數(shù)
gcc -g gbs.c -o gbs
2焊傅、gdb gbs對(duì)生成的可執(zhí)行文件進(jìn)行g(shù)db調(diào)試部蛇,同時(shí)進(jìn)入gdb
3撞反、可以進(jìn)行查看源碼 l 命令
4、設(shè)置斷點(diǎn)搪花,可以查看程序運(yùn)行到某一行的情況遏片,可以查看變量的值嘹害、堆棧情況等 命令格式 b 行號(hào)
5、查看斷點(diǎn)處情況 (gdb) info b
6吮便、運(yùn)行代碼 (gdb) r 運(yùn)行第六行代碼
7笔呀、顯示變量值 (gdb) p n
在程序暫停時(shí),鍵入"p 變量名"(print)即可髓需;
8许师、觀察變量 (gdb) watch n
在某一循環(huán)處,往往希望能夠觀察一個(gè)變量的變化情況僚匆,這時(shí)就可以鍵入命令"watch"來觀察變量的變化情況微渠,GDB在"n"設(shè)置了觀察點(diǎn);
9咧擂、單步運(yùn)行 (gdb) n
10逞盆、程序繼續(xù)運(yùn)行 (gdb) c
使程序繼續(xù)往下運(yùn)行,直到再次遇到斷點(diǎn)或程序結(jié)束松申;
11退出GDB (gdb) q