gdb的基本使用命令清單

2021-07-24 13:00:24 字數 1810 閱讀 9810

gdb除錯:

在linux環境中,gdb是主要的除錯工具,用來除錯c/c++程式。

如果要除錯程式,需要在gcc編譯時加上-g引數,比如gcc -g -o test test.c

進入gdb除錯:gdb test

退出gdb除錯:quit

gdb常用命令:

命令簡寫

功能run

無開始執行程式(如果沒有斷點,會直接執行完)

list

l檢視源**

break

b設定斷點

continue

c繼續執行,執行程式到下乙個斷點

next

n執行下一行**

step

s單步執行,可以進入到函式中

finish

無執行到當前函式結束

print

p列印變數的值

until

u執行到指定行

delete

d刪除斷點

info breakpoints

無顯示斷點資訊

info

i顯示資訊

backtrace

bt、where

列印函式棧資訊

info locals

無列印斷點所在函式的所有區域性變數的值

查詢用法:help command,比如help next,就可以看到next的命令幫助。

list

list 行號,顯示某一行附近的**

list 函式,顯示某個函式附近的**

list 檔名:函式,顯示某檔案的某個函式附近的**

break

(斷點處未被執行)

break 行號,將斷點設定到該行

break 函式,將斷點設定到該函式的開始處

break 檔名:函式,將斷點設定到某檔案的某個函式處

info breakpoints

顯示斷點資訊

num:代表斷點的編號

type:代表是斷點

disp:代表該斷點被執行後,應該keep(保留),del(刪除),dis(關閉)

enb:代表該斷點是啟用(y)還是未啟用(n)

address:代表該斷點的虛擬記憶體位址

what:代表該斷點在原始檔的資訊

delete

delete num,刪除指定斷點,輸入的num不是行號,而是斷點的編號,編號由info breakpoints獲得。

delete,刪除所有斷點

disable

disable num,關閉指定斷點,編號由info breakpoints獲得

disable,關閉所有斷點

enable

enable num,啟用指定斷點

enable,啟用所有斷點

enable once num,斷點執行一次後關閉

enable delete num,斷點執行一次後刪除

next

next n,執行n步(不會進入函式中)

step

step n,執行n步(會進到函式中)

GDB常見使用命令

gdb gnu symbolic debugger 簡單地說就是乙個除錯工具。它是乙個受通用公共許可證即gpl保護的自由軟體。像所有的偵錯程式一樣,gdb可以讓你除錯乙個程式,包括讓程式在你希望的地方停下,此時你可以檢視變數 暫存器 記憶體及堆疊。更進一步你可以修改變數及記憶體值。gdb是乙個功能很...

gdb基本使用方法和常用命令

一 符號表說明 使用gdb除錯的前提是要有符號表。如果程式是release版本,符號表不全,則使用gdb除錯時,不能單步除錯,成員變數等資訊不可查 如何生成符號表 編譯 時加上 g引數,則編譯的程式中會帶有當前程式的符號表。如 gcc o main main.c,則可對main程式進行單步除錯 二 ...

gdbstub中的基本命令 gdb常用命令

索引 已審核dir path 呼叫gdb編譯需要在cc後面加 g引數再加 o root redhat home gdb 除錯檔案 啟動gdb gdb l 字母l 從第一行開始列出原始碼 gdb break n 在第n行處設定斷點 gdb break func 在函式func 的入口處設定斷點 gdb...