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

Linux调试器-gdb使用

1. 背景

程序的发布方式有两种, debug 模式和 release 模式
Linux gcc/g++ 出来的二进制程序,默认是 release 模式
要使用 gdb 调试,必须在源代码生成二进制程序的时候 , 加上 - g 选项

2. 开始使用

gdb binFile 退出: ctrl + d quit 调试命令:
list l 行号:显示 binFile 源代码,接着上次的位置往下列,每次列 10 行。
list l 函数名:列出某个函数的源代码。
r run :运行程序。
n next :单条执行。
s step :进入函数调用
break(b)  行号:在某一行设置断点
break  函数名:在某个函数开头设置断点
info break :查看断点信息。
fifinish :执行到当前函数返回,然后挺下来等待命令
print(p) :打印表达式的值,通过表达式可以修改变量的值或者调用函数
p 变量:打印变量值。
set var :修改变量的值
continue( c) :从当前位置开始连续而非单步执行程序
run( r) :从开始连续而非单步执行程序
delete breakpoints :删除所有断点
delete breakpoints n :删除序号为 n 的断点
disable breakpoints :禁用断点
enable breakpoints :启用断点
info( i) breakpoints :参看当前设置了哪些断点
display  变量名:跟踪查看一个变量,每次停下来都显示它的值
undisplay :取消对先前设置的那些变量的跟踪
until X 行号:跳至 X
breaktrace( bt) :查看各级函数调用及参数
info i) locals :查看当前栈帧局部变量的值
quit :退出 gdb
http://www.lryc.cn/news/135544.html

相关文章:

  • linux安装mysql错误处理
  • Matlab绘制灰度直方图
  • http学习笔记1
  • PDF文件分割合并
  • 物联网无线通信方式总结
  • 计算机竞赛 python的搜索引擎系统设计与实现
  • ue5 场景搭建和灯光照明参考
  • Mycat跨分片Join指南
  • 网络:RIP协议
  • 如何优化因为高亮造成的大文本(大字段)检索缓慢问题
  • HTML <table> 标签
  • ubuntu pdf阅读器okular
  • 根据源码,模拟实现 RabbitMQ - 虚拟主机 + Consume设计 (7)
  • docker中bridge、host、container、none四种网络模式简介
  • 排序算法之详解冒泡排序
  • el-upload组件调用后端接口上传文件实践
  • 深度学习-实验1
  • 互联网医院开发|医院叫号系统提升就医效率
  • 手写 Mybatis-plus 基础架构(工厂模式+ Jdk 动态代理统一生成代理 Mapper)
  • 【C++11算法】iota算法
  • 付费加密音乐格式转换Mp3、Flac工具
  • React前端开发架构:构建现代响应式用户界面
  • Azure Bastion的简单使用
  • 深入理解高并发编程 - 深度解析ScheduledThreadPoolExecutor
  • Android---- 一个完整的小项目(消防app)
  • XXX程序 详细说明
  • perl下载与安装教程【工具使用】
  • Chrome谷歌浏览器修改输入框自动填充样式
  • Azure CLI 进行磁盘加密
  • Java“牵手”根据关键词搜索(分类搜索)速卖通商品列表页面数据获取方法,速卖通API实现批量商品数据抓取示例