1. 程式人生 > >gdb中一些常用的調試命令

gdb中一些常用的調試命令

== 指定 函數名 filename expr ons 函數 pre 調用

  • show version :顯示gdb版本信息
  • info functions :列出可執行文件的所有函數名稱
  • step(縮寫s):進入函數(函數必須有調試信息)
  • next(縮寫n):不進入函數,gdb會等函數執行完,再顯示下一行要執行的程序代碼
  • finish:當單步調試一個函數時,如果不想繼續跟蹤下去,使用finish,函數會繼續執行完,並且打印返回值
  • return 或者return expression :命令指定函數的返回值
  • call 或print :如call func(),該命令直接調用函數執行
  • i frame:顯示函數堆棧楨的信息
  • b *address: 在程序地址上打斷點
  • b linenum:在當前文件中的某一行打斷點
  • save breakpoints filename:批量保存斷點
  • source filename:設置之前保存的斷點
  • tbreak(縮寫tb):斷點只生效一次
  • i b:查看斷點
  • break ... if cond:如 吧10 if i==10,只有在條件滿足時,斷點才會被觸發
  • ifnore bnum count:接下來count次編號為bnum的斷點觸發都不會讓程序中斷,只有第count+1次斷點觸發才會讓程序中斷
  • watch:命令設置觀察點,也就是當一個變量值發生變化時,程序會停下來
  • set:改變字符串的值
  • set var variable=expr:命令設置變量的值;如set var i=8;
  • jump:當調試程序時,你可能不小心走過了出錯的地方,可jump回去

gdb中一些常用的調試命令