欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 财经 > 产业 > GDB常用指令

GDB常用指令

2024/10/23 23:27:09 来源:https://blog.csdn.net/weixin_74027669/article/details/140913036  浏览:    关键词:GDB常用指令

GDB调试:GDB调试的是可执行文件,在gcc编译时加入-g参数,告诉gcc在编译时加入调试信息,这样gdb才能调试这个被编译的文件。此外还会加上-Wall参数尽量显示所有警告信息。

GDB命令格式

1、start:程序在第一行停止;run:遇到断点才停止。

2、continue:继续运行,到下一个断点停止;next:向下执行一行代码(不进入函数体);step:向下单步执行(遇到函数调用可以进入函数体, finish可以跳出函数体);util:可以跳出循环体。

3、print 变量名(打印变量的值);ptype 变量名(打印变量类型)。display 变量名(自动打印指定变量的值,之后每执行一步,都会自动打印这个变量);undisplay 编号(将自动打印的变量关掉);info display:查看当前正在自动打印的变量有什么。

4、list : 从头默认位置显示;list 行号(从指定的行显示,这个行在显示的中间);list 函数名(从指定的函数显示);list 文件名:行号(函数名)从指定文件名的行号或者函数名显示。show listsize :查看显示的行数(默认10行);set listsize 行数:设置显示的行数。

5、break 行号:在指定的行号位置打断点;break 函数名:在指定的函数位置打断点;break 文件名:行号/函数名(在指定的文件中的行号或者函数位置打断点)。info break : 显示所有的断点信息;delete 断点编号:删除断点;disable 断点编号:设置断点无效;enable 断点编号:设置断点生效。break 10 if a == 5 : 在指定行设置条件断点,a == 5时断点生效。

GDB多进程断点调试

  1. set follow-fork-mode [parent(默认) | child ] :设置调试父进程还是子进程,默认父进程。
  2. show follow-fork-mode : 查看调试父进程还是子进程。
  3. set detach-on-fork [ on | off ] : 设置调试模式。
  4. show detach-on-fork:查看调试模式。(默认为on,表示调试当前进程的时候,其他进程继续运行;如果为off,调试当前进程的时候,其他进程会被GDB挂起)。
  5. info inferiors : 查看调试的进程;inferior id :切换当前调试的进程;detach inferiors id :使进程脱离GDB调试。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com