gdb是gnu發布的一款功能強大的程式除錯工 具。gdb主要完成下面三個方面的功能:
1、啟動被除錯程式。2、讓被除錯的程式在指定的位置停住。
3、當程式被停住時,可以檢查程式狀態 (如變數值)。
vlist(l)檢視程式
vbreak(b)函式名在某函式入口處新增斷點
vbreak(b) 行號在指定行新增斷點
vbreak(b) 檔名:行號在指定檔案的指定行添 加斷點
vinfo break檢視所有設定的斷點
vdelete 斷點編號刪除斷點
vnext(n)單步執行程式(不進入子函式)
vstep(s)單步執行程式(進入子函式)
vcontinue(c)繼續執行程式
vprint(p)變數名 檢視指定變數值
vset var=value設定變數的值
vquit(q)退出gdb
core dump又叫核心轉存。當程式在執行 過程中發生異常, 這時linux系統可以把程 序出錯時的記憶體內容儲存在乙個core檔案 中, 這種過程叫core dump。core dump主要用來對付什麼樣的錯誤呢?
linux應用程式在執行過程中,經常會遇到 segment fault(段錯誤) 這樣的錯誤。
產生這樣錯 誤的原因通常有
v 陣列訪問越界v 訪問空指標v 棧溢位v 修改唯讀記憶體在linux系統中,預設是關閉core dump功能 的,但是可以通過來ulimit命令開啟/關閉 core dump功能。
開啟:發生core dump之後, 可以使用gdb進行查 看core檔案的內容, 以定位程式出錯的位置ulimit -c unlimited
關閉:ulimit -c 0
用法:gdb 程式名 core檔名例: gdb ./test core.12525
GDB除錯程式 一
gdb是gnu開源組織發布的乙個強大的unix下的程式除錯工具,主要完成以下四個方面的內容 1.啟動程式,讓陳程式按照自己的定義隨心所欲的執行。2.可以放程式在指定的斷點處停住。3.當程式挺住時,可以檢查程式發生的事情。4.動態改變程式的執行環境。gdb使用流程 1.編譯可執行檔案 gcc g zj...
GDB除錯程式 一
以下文章 陳皓csdn部落格 用gdb除錯程式 gdb概述 gdb是gnu開源組織發布的乙個強大的unix下的程式除錯工具。或許,各位比較喜歡那種圖 形介面方式的,像vc bcb等ide的除錯,但如果你是在unix平台下做軟體,你會發現gdb這個除錯工具有比vc bcb的圖形化偵錯程式更強大的功 能...
GDB除錯程式
gdb的三個功能 1 啟動被除錯的程式 2 設定斷點 3 設定斷點之後可以檢查程式的狀態 1.編譯生成可執行檔案 注意 g 除錯選項 gcc g tst.c o tst 2.啟動gdb gdb tst 3.在main函式處設定斷點 break main 4.執行程式 run5.利用 更加豐富的 gd...