調(diào)試程序使用的鍵 r run 運(yùn)行.程序還沒(méi)有運(yùn)行前使用 c cuntinue 繼續(xù)運(yùn)行。運(yùn)行中斷后繼續(xù)運(yùn)行 q 退出 kill 終止調(diào)試的程序 h help 幫助 <tab> 命令補(bǔ)全功能
step 跟入函數(shù) next 不跟入函數(shù) b breakpoint 設(shè)置斷點(diǎn)。 用法: b 函數(shù)名 對(duì)此函數(shù)進(jìn)行中斷 b 文件名:行號(hào) 對(duì)此文件中指定行中斷.假如是當(dāng)前文件,那么文件名與:號(hào)可以 省略 看當(dāng)前斷點(diǎn)數(shù)使用info break.禁止斷點(diǎn)disable 斷點(diǎn)號(hào).刪除delete 斷點(diǎn)號(hào).
l list 列出代碼行。一次列10 行。連接使用list將會(huì)滾動(dòng)顯示. 也可以在list 后面 跟上 文件名:行號(hào) watch 觀察一個(gè)變量的值。每次中斷時(shí)都會(huì)顯示這個(gè)變量的值 p PRint 打印一個(gè)變量的值。與watch不同的是print只顯示一次 這里在順便說(shuō)說(shuō)如何改變一個(gè) value. 當(dāng)你下指令 p 的時(shí)候,例如你用 p b, 這時(shí)候你會(huì)看到 b 的 value, 也就是上面的 $1 = 15. 你也同樣可以用 p 來(lái)改變一個(gè) value, 例如下指令 p b = 100 試試看, 這時(shí)候你會(huì)發(fā)現(xiàn), b 的 value 就變成 100 了:$1 = 100.
4. 清除斷點(diǎn),NUM 是在 info break 顯示出來(lái)的斷點(diǎn)編號(hào)。 (gdb) delete NUM 全速及逐步執(zhí)行程序 1. 從程序開(kāi)頭全速執(zhí)行程序,直到碰到斷點(diǎn)或是程序執(zhí)行完畢為止。 (gdb) run