当前位置: 首页 > news >正文

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调试。
http://www.lryc.cn/news/415067.html

相关文章:

  • Nginx 高级 扩容与高效
  • pythonflaskMYSQL自驾游搜索系统32127-计算机毕业设计项目选题推荐(附源码)
  • C++ vector的基本使用(待补全)
  • Java 属性拷贝 三种实现方式
  • Java-变量,运算符,输入与输出
  • 五、一个quad同时支持pcie和sfp两种高速接口的ref时钟配置
  • AI辅助教育:九章大模型的数学辅导功能解析
  • 力扣刷题之3128.直角三角形
  • OD C卷 - 机场航班调度
  • uni-app中使用支付宝扫码插件并且在真机调试时使用(详细教程)
  • 每日学术速递8.5—1
  • 1、操作系统相关概念
  • 【ModelSim】仿真问题记录
  • 如何提高深度学习中数据运行的稳定性
  • 【连续数组】python刷题记录
  • JavaScript青少年简明教程:DOM和CSS简介
  • 架构师知识梳理(一):计算机硬件
  • 从根儿上学习spring 四 之run方法启动第一段
  • 智能闹钟如何判断用户已经醒了?
  • 【算法】动态规划解决背包问题
  • day09 工作日报表
  • C++学习之路(1)— 第一个HelloWorld程序
  • python3 pyside6图形库学习笔记及实践(三)
  • 03 库的操作
  • 嵌入式人工智能(44-基于树莓派4B的扩展板-LED按键数码管TM1638)
  • linux通过抓包工具tcpdump查看80端口访问量情况
  • Mac 上安装和卸载 SDKMAN 及管理多个 JDK
  • 字节测开一面面经
  • HTML 段落
  • 【Mind+】掌控板入门教程04 迷你动画片