1. 程式人生 > >gdb 方法 說明 (轉)

gdb 方法 說明 (轉)

* list:顯示程式中的程式碼,常用使用格式有:

    list

      輸出從上次呼叫list命令開始往後的10行程式程式碼。

    list -

      輸出從上次呼叫list命令開始往前的10行程式程式碼。

    list n

      輸出第n行附近的10行程式程式碼。

    list function

      輸出函式function前後的10行程式程式碼。

 * forward/search:從當前行向後查詢匹配某個字串的程式行。使用格式:

    forward/search 字串

  查詢到的行號將儲存在$_變數中,可以用print $_命令來檢視。

 * reverse-search:和forward/search相反,向前查詢字串。使用格式同上。

 * break

:在程式中設定斷點,當程式執行到指定行上時,會暫停執行。使用格式:

    break 要設定斷點的行號

 * tbreak:設定臨時斷點,在設定之後只起作用一次。使用格式:

    tbreak 要設定臨時斷點的行號

 * clear:和break相反,clear用於清除斷點。使用格式:

    clear 要清除的斷點所在的行號

 * run:啟動程式,在run後面帶上引數可以傳遞給正在除錯的程式。

 * awatch:用來增加一個觀察點(add watch),使用格式:

    awatch 變數或表示式

  當表示式的值發生改變或表示式的值被讀取時,程式就會停止執行。

 * watch:與awatch類似用來設定觀察點,但程式只有當表示式的值發生改變時才會停止執行。使用格 式:

    watch 變數或表示式

  需要注意的是,awatch和watch都必須在程式執行的過程中設定觀察點,即可執行run之後才能設定。

 * commands
:設定在遇到斷點後執行特定的指令。使用格式有:

    commands

      設定遇到最後一個遇到的斷點時要執行的命令

    commands n

      設定遇到斷點號n時要執行的命令

  注意,commands後面跟的是斷點號,而不是斷點所在的行號。

  在輸入命令後,就可以輸入遇到斷點後要執行的命令,每行一條命令,在輸入最後一條命令後輸入end就可以結束輸入。

 * delete:清除斷點或自動顯示的表示式。使用格式:

    delete 斷點號

 * disable:讓指定斷點失效。使用格式:

    disable 斷點號列表

  斷點號之間用空格間隔開。

 * enable:和disable相反,恢復失效的斷點。使用格式:

    enable 斷點編號列表

 * ignore
:忽略斷點。使用格式:

    ignore 斷點號 忽略次數

 * condition:設定斷點在一定條件下才能生效。使用格式:

    condition 斷點號 條件表示式

 * cont/continue:使程式在暫停在斷點之後繼續執行。使用格式:

    cont

      跳過當前斷點繼續執行。

    cont n

      跳過n次斷點,繼續執行。

  當n為1時,cont 1即為cont。

 * jump:讓程式跳到指定行開始除錯。使用格式:

    jump 行號

 * next:繼續執行語句,但是跳過子程式的呼叫。使用格式:

    next

      執行一條語句

    next n

      執行n條語句

 * nexti:單步執行語句,但和next不同的是,它會跟蹤到子程式的內部,但不打印出子程式內部的語句。使用格式同上。

 * step:與next類似,但是它會跟蹤到子程式的內部,而且會顯示子程式內部的執行情況。使用格式同上。

 * stepi:與step類似,但是比step更詳細,是nexti和step的結合。使用格式同上。

 * whatis:顯示某個變數或表示式的資料型別。使用格式:

    whatis 變數或表示式

 * ptype:和whatis類似,用於顯示資料型別,但是它還可以顯示typedef定義的型別等。使用格式:

    ptype 變數或表示式

 * set:設定程式中變數的值。使用格式:

    set 變數=表示式

    set 變數:=表示式

 * display:增加要顯示值的表示式。使用格式:

    display 表示式

 * info display:顯示當前所有的要顯示值的表示式。

 * delete display/undisplay:刪除要顯示值的表示式。使用格式:

    delete display/undisplay 表示式編號

 * disable display:暫時不顯示一個要表示式的值。使用格式:

    disable display 表示式編號

 * enable display:與disable display相反,使用表示式恢復顯示。使用格式:

    enable display 表示式編號

 * print:列印變數或表示式的值。使用格式:

    print 變數或表示式

  表示式中有兩個符號有特殊含義:$和$$。

  $表示給定序號的前一個序號,$$表示給定序號的前兩個序號。

  如果$和$$後面不帶數字,則給定序號為當前序號。

 * backtrace:列印指定個數的棧幀(stack frame)。使用格式:

    backtrace 棧幀個數

 * frame:列印棧幀。使用格式:

    frame 棧幀號

 * info frame:顯示當前棧幀的詳細資訊。

 * select-frame:選擇棧幀,選擇後可以用info frame來顯示棧幀資訊。使用格式:

    select-frame 棧幀號

 * kill:結束當前程式的除錯。

 * quit:退出gdb。

相關推薦

gdb 方法 說明 ()

* list:顯示程式中的程式碼,常用使用格式有:    list      輸出從上次呼叫list命令開始往後的10行程式程式碼。    list -      輸出從上次呼叫list命令開始往前的10行程式程式碼。    list n      輸出第n行附近的10行程式程式碼。    list func

Html中嵌套其他HTML文件的幾種方法

java mar net rip gin bsp ace wid style 給大家整理了3個方法,一個是HTML的iframe標簽,別兩個是JS引用。比如要在arr.html文件裏引用index.html文件,方法如下。 HTML引用方法: <iframe na

C# Winform 跨線程更新UI控件常用方法總結()

sum tex ase adc 而是 this obj 出現 turn 出處:http://www.tuicool.com/articles/FNzURb 概述 C#Winform編程中,跨線程直接更新UI控件的做法是不正確的,會時常出現“線程間操作無效: 從不是創建控件的

Delphi 導出數據至Excel的7種方法

dbase cas excel classes date pbo item 方式 down 轉自:http://blog.csdn.net/zang141588761/article/details/52275948 一; delphi 快速導出excel u

dpkg: error processing package bluez (--configure) 解決方法

operation proc addition too opera report add message ace 轉自:http://blog.csdn.net/heray1990/article/details/47803541 在 Ubuntu 執行 sudo apt

JQuery和JS操作LocalStorage/SessionStorage的方法

char art target jsb 頁面 所有 操作方法 key blog 出處:http://blog.csdn.net/djzhao627/article/details/50747628 首先說一下LocalStorage和SessionStorage Loc

Delphi中MD5實現方法

file 單元 ava sender shm md5 文章 files admin 原來寫過一個計算MD5的程序,是用了一個叫MD5.pas的單元,使用起來還算簡單,但還有更簡單的辦法,安裝了indy就會有IdHashMessageDigest單元(delphi 7默認安裝

解決Eclipse狂吃內存的解決方法

too options 占用 退出 eclipse cli 文件 釋放 org 解決Eclipse狂吃內存的解決方法(轉) 1、在eclipse的安裝路徑下建一個文件叫options,千萬別又擴展名,然後添加內容如下: org.eclipse.ui/p

C++中三種創建對象的方法

內存 stream self 一般來說 ron ref 支持 內存碎片 搜索 我們都知道C++中有三種創建對象的方法,如下: #include <iostream> using namespace std; class A { private: in

頁面加載動畫實現方法

sed javascrip orm load city eee display script bic html: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.

CentOS設置程序開機啟動程序/服務的方法

關閉 str 兩種 title sin 命令 系統環境變量 file lamp 註意:CentOS 6下基本沒什麽問題,CentOS 7估計不一定能行。 在CentOS系統下,主要有兩種方法設置自己安裝的程序開機啟動。 1、把啟動程序的命令添加到/etc/rc.d/rc

軟件項目中的成本構成及估算方法

一個 發生 折舊費 art 載體 計算機 需求 復雜度 content 隨著知識經濟、信息時代的來臨,計算機軟件業迅猛發展。商品化、資本化、資產化的計算機軟件的價值 評估的社會需求也日益增多,而且有越來越多的趨勢。由於系統軟件通常是一些規模大、復雜程度高的人一 機系統,因此

軟件開發成本估算方法

ec2 結果 div 列表 持續時間 整理 str 似的 cti 轉自:http://hi.baidu.com/wangziming/blog/item/d8ee34010b18cf0e7bec2c4b.html 我的學習感悟:對於這個並不懂,尤其是什麽靜態單變

各種求逆元方法總結[]

str com 情況 sans esp 找到 解法 () clu 各種求逆元方法總結[轉] 在MOD的情況下, (a*b/c ) %MOD 不能直接 / c 來求,需要找到一個數 inv 使得 inv * c % MOD = 1 。 這樣 (a*b / c) % M

<正則吃餃子> :關於Java的native方法

any 所有 接口 當我 article 正是 str 直接 空間 感謝作者的分享,原文地址:http://blog.csdn.net/wike163/article/details/6635321 一. 什麽是Native Method 簡單地講,一個Native

各瀏覽器禁用某網站JS腳本的方法

per gin width aaa all firefox nal opera 腳本 某些網站,經常會加載一些非常討厭的JS腳本,如果我們想禁止這個網站的JS腳本,可以使用下面的方法: 一、IE瀏覽器 1、在Internet選項中,選擇安全選項卡,然後點擊受限制的站點,

DNA甲基化及其測量方法

延伸 深入 特定 modified 涵蓋 pau ada protoc 修復 轉自聲明的奧秘 www.lifeomics.com DNA甲基化與腫瘤發生: DNA甲基化水平和模式的改變是腫瘤發生的一個重要因素。這些變化包括CpG島局部的高甲基化和基因組D

zlib編譯不過(Error A2070)解決方法

endif api 位置 round instr a20 letter courier new 原文轉自 http://dearymz.blog.163.com/blog/static/2056574200871010027435/ 1、zlib是個很牛的東東,從htt

嚴重: Error loading WebappClassLoader context:異常的解決方法

需要 oca 選擇 tom png servers .net -i ati Eclipse的web工程至Tomcat默認的部署目錄是在工程空間下,本文旨在將部署目錄改為Tomcat安裝目錄,並解決依賴包輸出問題。1.在Eclipse中添加Tomcat服務器。2.將web工程