gdb中一些常用的调试命令

  • 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回去
原文地址:https://www.cnblogs.com/wangshujing/p/6847781.html