GDB簡單使用

GDB簡述
1、程序中加入調試信息:gcc -g -o a.ddebu a.c
2、啓動gdb:gdb
3、經常使用命令
  1.backtrace:顯示程序中的當前位置和表示如何到達當前位置的棧跟蹤(同義詞:where)。
  2.breakpoint:在程序中設置一個斷點
  3.cd:改變當前工做目錄。
  4.clear:刪除剛纔中止處的斷點。
  5.commands:命中斷點時,列出將要執行的命令。
  6.continue:從斷點開始繼續執行。
  7.delete:刪除一個斷點或監測點,也可與其餘命令一塊兒使用。
  8.display:程序中止時顯示變量和表達式。
  9.down:下移棧幀,使得另外一個函數成爲當前函數。
  10.frame:選擇下一條continue命令的幀。
  11.info:顯示與該程序有關的各類信息。
  12.info break:顯示當前斷點清單,包括到達斷點處的次數等。
  13.info files:顯示被調試文件的詳細信息。
  14.info func:顯示全部的函數名稱。
  15.info local:顯示當前函數中的局部變量信息。
  16.info prog:顯示被調試程序的執行狀態。
  17.info var:顯示全部的全局和靜態變量名稱。
  18.jump:在源程序中的另外一點開始運行。
  19.kill:異常終止在gdb控制下運行的程序。
  20.list:列出相應於正在執行的程序的源文件內容
  21.next:執行下一個源程序行,人而執行其總體中的一個函數。
  22.print.顯示變量或表達式的值。
  23.pwd:顯示當前工做目錄。
  24.pype:顯示一個數據結構(如一個結構或C++類)的內容.
  25.quit:退出gdb.
  26.reverse-search:在源文件中反向搜索正規表達式。
  27.run:執行該程序。
  28.search:在源文件中搜索正規表達式。
  29.set variable:給變量賦值。
  30.signal:將一個信號發送到正在運行的進程。
  31.step:執行下一個源程序行,必要時進入下一個函數。
  32.undisplay display:命令的反命令,不要顯示錶達式。
  33.until:結束當前循環。
  34.up:上移棧幀,使另外一個函數成爲當前函數。
  35.watch:在程序中設置一個監測點(即數據斷點);
  36.whatis:顯示變量或函數類型。
4、習慣性操做
  1.導入文件:file /test.debug
  2.查看文件:list
  3.加入斷點行數:break 6
  4.運行程序:run
  5.運行到第一個斷點,step,程序運行一步
  6.顯示當前變量的值:pirnt **
  7.退出:q
數據結構

相關文章
相關標籤/搜索