gdb基本指令
单步调试 n
启动程序 r
执行到下一个断点处 c
进入函数 s
跳转到某一行指令 until [行号]
结束当前函数 finish
查看当前行附近代码 l
打印某一变量值 p
退出 q
设置断点 b
查看断点 info b
删除断点 delete [断点号]
查看线程 info thread
跳转线程 thread [线程号]
当想了解一个函数是怎么一步一步调用到的可以使用bt(backtace)命令查看当前堆栈
同时使用up/down可以调整到堆栈上任意一个函数
使用info 命令可以查看当前函数的信息
info args 打印当前函数的形参详细值
info locals 打印当前函数里所有的局部变量名字和值
有时调试会遇到加了断点,执行到该断电后直接继续continue的问题,原因是因为gdb当前调试在父进程,而断点执行在子进程上。
可以通过以下指令解决此问题
set follow-fork-mode child