Linux工具之gdb

(1)打開需調試的文件
  gdb test
    或
  gdb
  file test
(2)運行相關
  run(r)  #開始運行程序
  next(n)  #單步運行程序(不進入子函數)
  step(s)  #單步運行程序(進入子函數)
  finish  #運行程序,直到當前函數結束
  continue(c)  #繼續運行程序,直到斷點/結束
  until  #運行程序直到退出循環體
  until 行號  #運行至某行,不僅僅用來跳出循環
  call 函數(參數)  #調用程序中可見的函數,並傳遞“參數”,如:call gdb_test(55)
  quit(q)  #退出gdb
(3)查看程序及斷點調試
  list(l) [行號/函數名]  #查看程序
  break(b) 函數名/行號/文件名:行號/行號if條件  #打斷點
  print(p) 變量名/函數名(參數)  #查看指定變量值
  display 變量名  #單步調試中,每次單步指令後輸出被設置的表達式和值
  watch 變量名  #對指定變量進行監控,值發生改變就顯示
  info break(b)  #查看所有斷點
  delete 斷點號n  #刪除第n個斷點
  disable 斷點號n  #暫停第n個斷點
  enable 斷點號n  #開啓第n個斷點
  clear 行號n  #清除第n行的斷點
  delete breakpoints  #清除所有斷點
  whatis  #查詢變量或函數
  info function  #查詢函數
  info locals  #顯示當前堆棧頁的所有變量
(4)查詢運行信息
  backtrace(bt)  #顯示當前調用堆棧;
  up/down  #改變堆棧顯示的深度
  set args 參數  #指定運行時的參數
  show args  #查看設置好的參數
  info program  #來查看程序的是否在運行,進程號,被暫停的原因
(5)分割窗口layout——用於分割窗口,可以一邊查看代碼,一邊測試
  layout src  #顯示源代碼窗口
  layout asm  #顯示反彙編窗口
  layout regs  #顯示源代碼/反彙編和CPU寄存器窗口
  layout split  #顯示源代碼和反彙編窗口
  Ctrl + L  #刷新窗

cgdb:gdb的界面增強版

這裏寫圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章