除錯程式需要傳入引數:
在執行前 set args …(需要傳入的引數**檢視:
list ==》從main函式開始檢視**
show listsize ==》顯示當前 l 檢視**會顯示多少行
set listsize 20 ==》 設定 l 顯示為20行
list 行號 ==》顯示該行號的上下文**
list 函式名 ==》檢視函式
list 檔名:行號
list 檔名:函式名
break 行號
break 函式名
break 檔名:行號
break 檔名:函式名
i break ==》檢視斷點編號
del 斷點編號 ==》刪除斷點
del 斷點號1 斷點號3 ==》刪除多個斷點
del 斷點號1-斷點號4 ==》1到4的斷點全部刪除
break filename: 行號 ==》設定那個檔案中的斷點
dis 斷點編號 ==》設定斷點為無效
ena 斷點編號 ==》設定斷點為有效
break 17 if i == 10 ==》當i 等於10的時候弟17行才停
continue ==》斷點處繼續往下執行
設定變數值的自動顯示:
ptype 變數名 ===》檢視變數型別
display 變數名 ==》自動列印該變數的值,用在迴圈中
i display ==》檢視display編號
undisplay display編號 ==》取消display列印
step ==》碰見函式名,直接step可以直接進入函式體內部
finish ==》從函式體中跳出來(函式中不能有斷點)
格式化輸出:
print 「%s\n」, name
其它:
r ==》執行
start ==》只啟動一行
set var i=5 ==》直接設定變數值i=5
until ==》跳出迴圈(迴圈中不能有斷點)
q ==》退出
GDB常用指令
一 基本指令 程式設計設定 1.需要加 g,不能有 s,如g g main.cpp 常用指令 gdb gdb e 或者輸入gdb gdb file e 進入gdb,執行e檔案 gdb info breakpoints 可使用info檢視斷點相關的資訊 gdb break 7 以行號設定斷點 gdb ...
gdb除錯常用的指令
關於第一次使用了gcc後,我做了一些總結 以乙個題目為例 對於兩組使用者輸入的字串進行比較,長度自定,輸出相同的字元。下面是一些gdb常用的指令 首先是要進入gdb除錯環境,先通過gcc g o newname name.c 生成可執行檔案 gdb newname進入gdb除錯環境 退出gdb ob...
gcc和gdb的常用指令
命令 作用 o 將命令的執行結果寫入檔案中,預設為a.out e預處理操作,生成預處理檔案 s編譯操作,生成組合語言目標檔案 c彙編操作,生成可重定位目標檔案 i 將加入到頭檔案的搜尋目錄中,鏈結時在搜尋標準標頭檔案之前先在進行搜尋 l 將加入到庫檔案的搜尋目錄中,鏈結時在搜尋標準標頭檔案之前先在進...