GDB 是GNU的一个交互式调试工具,可以调试C、C++ 和其他几种语言编写的程序

利用  gcc   -g   [源文件列表]  -o  [调试文件.x]  来生成调试文件

生成调试文件后   gdb [调试文件.x]   进入调试。

命令类型 GDB命令 含义
命令执行 step(或s) step into 执行至下一条语句,如果函数则跳转进函数
next (或n) 查看各级函数的调用和参数
continue(或c) 从当前位置开始连续执行程序至下一个断点
run(或r) 直接从开始重新执行程序
start 执行至main函数的第一条指令
finish  运行到当前函数末尾
变量即表达式值跟踪 frame(或 f) [栈帧号] 查看栈帧情况
info (或 i ) locals

查看当前栈帧变量

list(或 l)  列出往下10行的源代码
list   [行号]

列出从第几行开始的源代码

list  [函数名] 列出某个函数的源代码
backtrace(或bt) step over执行下一条语句
print(或 p)  [表达式] 打印变量或表达式或函数的值
set [var] 重设变量值
display [变量] 跟踪变量值
watch  [表达式] 设置观察点
undisplay 曲线变量跟踪
info(或 i) watchpoints 查看设置了哪些观察点
x 打印存储器的一段内容
断点设置 break (或b) [行号]  在第几行设置断点
break (或b) [函数名] 在函数开头设置断点
break..if.. 设置条件断点
disable breakpoints 禁用断点
enable breakpoints 启用断点
info(或 i)breakpoints 查看当前设置的断点
delete breakpoints 删除断点

Linux C : GDB调试命令汇总相关推荐

  1. linux—常用gdb调试命令汇总

    目录 一.准备工作 二.调试命令 (一).查看代码内容(l) (二).开始调试(r) (三).查看当前调试位置(where) (四).断点(b.info b.d.c.disable.enable) 1 ...

  2. Linux之GDB调试命令

    gdb启动 gdb 程序名 l 查看源代码(默认显示十行) l 文件名:行数 l 文件名:函数名 添加断点 break + 行数 (b 也行) b 15 if i == 15 条件断点 i b 查看断 ...

  3. linux下gdb调试方法与技巧整理

    目录 一.gdb简介 二.gdb使用流程 1.启动gdb 2.查看源码 3.运行程序 4.设置断点 5.单步执行 6.查看变量 7.退出gdb 三.gdb基本使用命令 1.运行命令 2.设置断点 3. ...

  4. gdb调试命令的使用及总结

    gdb是一个在UNIX环境下的命令行调试工具.如果需要使用gdb调试程序,请在gcc时加上-g选项.下面的命令部分是简化版,比如使用l代替list等等 1.基本命令 1)进入GDB #gdb test ...

  5. LINUX下GDB调试

    LINUX下GDB调试 (gdb) p result[2]=33 $5 = 33 (gdb) p printf("result[2]=%d\n", result[2]) resul ...

  6. gdb调试命令与技巧

    /********************************************************************* * Author : lile * Modified : ...

  7. linux下gdb调试方法和技巧详解

    linux下gdb调试方法和技巧整理 简介 UNIX或者UNIX-like下调试工具 启动gdb # 1. 在可执行程序不需要输入参数时,我们可以使用 gdb + 可执行程序 gdb ./typeid ...

  8. linux之gdb调试常用100个技巧

    linux之gdb调试常用100个技巧 https://gitlore.com/page/gitlore-git/gdb_tips/index.html 如果不懂linux gdb调试的 看下这篇文章 ...

  9. linux 下的vi命令汇总

    linux 下的vi命令汇总 linux 下的vi 主要作用是什么? Vi是Unix及Linux系统bai下标准的编辑器,由美国加州大学伯克利分校的Bill Joy所创立. 基本上vi可以分为三种状态 ...

最新文章

  1. 【深度学习入门到精通系列】卷积和池化计算详解
  2. 操作系统概念学习笔记 11 进程同步(一)
  3. 田志刚:企业知识管理与用户创造内容(UGC)
  4. Cloud Native Infrastructures Meetup 北京 | 活动安排
  5. JDK源码解析之 java.lang.ClassLoader
  6. HDU 1108 最小公倍数
  7. 哪些数据库是行存储?哪些是列存储?有什么区别?
  8. S5PV210的内存映射
  9. java抢购防止多次请求_springboot项目中接口防止恶意请求多次
  10. 机器人学 —— 机器人感知(Mapping)
  11. iOS模拟器中修改textField键盘类型为中文输入和键盘弹出方法
  12. Linux之rm命令
  13. mongovue mysql_mongo客户端mongoVUE的使用
  14. 【python爬虫】QQ空间爬虫 笔记
  15. C++ 设计模式 面向对象设计原则 相关概念介绍(结合UnrealEngine4)
  16. 您知道Linux下C语言编程的一些注意事项吗_教育中国
  17. 单商户商城系统功能拆解47—应用中心—自定义海报
  18. HTML提供的5种空格实体(nbsp`;`ensp`; `emsp`;` thinsp`; `zwnj`;`zwj`;)
  19. Qt的主窗口背景设置
  20. matlab经济建模之离散模型

热门文章

  1. webpack entry和output配置属性
  2. android-Activity
  3. 如何在 Windows XP 中设置、查看、更改或删除文件和文件夹的特殊权限
  4. springboot下使用mybatis配置
  5. linux常用命令(2)常用系统工作命令
  6. vue计算属性:computed示例
  7. vue v-if指令
  8. pyspark randomSplit代码示例
  9. kafka可视化客户端工具(Kafka Tool)的基本使用
  10. spark on yarn任务提交及运行完整流程图