尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

【Linux】基础开发工具gdb

【Linux】基础开发工具gdb
📅 发布时间:2026/7/29 4:46:40

Linux基础开发工具gdb

1、Debug和release

程序的发布方式有两种,Debug和release模式,Debug模式是开发者模式,用户最终用的是release,在Debug模式下,因为增加了调试信息,所以可执行文件体积较大,gcc/g++ 默认编译出来的程序是Release 版本,如果想在Debug模式下得到可执行程序,那么需要输入:

gcc mycmd.c-o mycmd-g

通过readelf mycmd-debug -S | grep debug指令,可以将二进制文件中与Debug有关的部分过滤出来,打印出mycmd-debug在Debug模式下的信息

2、gdb常用指令

mycmd.c:

#include<stdio.h>intSum(ints,inte){intresult=0;inti=s;for(s;i<=e;i++){result+=i;}returnresult;}intmain(){intstart=1;intend=100;printf("I will begin\n");intn=Sum(start,end);printf("running done, result is: [%d~%d]=%d\n",start,end,n);return0;}

输入gdb,进入gdb环境

输入q退出

  • 输入list或l:显示源代码

  • 输入l num或list num:查看文件第num行附近代码

  • 输入run或r:运行程序

打断点时,使用gdb不方便查看断点,以下使用cgdb进行调试

  • 输入b 行号:设置断点
  • 输入info b 行号:查看所有断点信息

  • 输入d num:删除断点

  • n或next:逐过程单步执行面部进入函数内部

  • s或step:逐语句单步执行,进入函数内部

断点为第18行:

  • 输入p 变量:打印变量或表达式的值

p为单次打印,单步执行,不会自动刷新,打印变量的值不会变化

  • display 变量名:跟踪监视,程序每次暂停,自动打印变量
  • undisplay num:取消对先前变量的跟踪

  • 输入until x:跳转至x行

  • 输入finish:执行到当前函数结束,暂停在函数调用处,打印返回值

$1是 gdb 保存返回值的变量,5050就是 Sum 函数 return 带回的结果

  • 输入continue或c:从当前断点直接运行到下一个断点

  • disable breakpoints:禁用断点
  • enable breakpoints:启用被禁用的断点
  • backtrace或bt:查看函数调用栈
  • info locals:查看当前函数局部变量
  • set var:修改变量的值

相关新闻

  • STM32最小系统板核心电路全解析:从电源滤波到时钟复位
  • Qt文件元数据操作:QFileInfo核心功能与跨平台实践指南
  • 2026年7月幕墙不锈钢钢丝绳/泰州电梯不锈钢钢丝绳厂家推荐评选_泰州市凯威不锈钢制品有限公司 - 品牌宣传支持者

最新新闻

  • 芯和半导体携手联想集团在DAC 2026现场发布EDA Agent最新研发成果
  • FDM 3D打印导电材料全攻略:从原理到实践,打造一体化功能电子器件
  • 牛剑申请辅导哪家最懂孩子优势且方案最独特?
  • 如何用旧 iPhone 设置新 iPhone?
  • 终极指南:如何安全解锁Nintendo Switch的全部潜力
  • 揭秘酒店RFID固定资产管理系统:高效管理TOP5实用榜单

日新闻

  • 金融舆情监测系统:多语言情感分析与实时可视化技术解析
  • QT C++调用Python异常处理:PyBind11实战与跨语言编程指南
  • A-47双麦回音消除模块:主次麦空间分布与差分连接对ENC性能的影响

周新闻

  • 大连理工大学与东京大学联手打造的“主动型AI助手“
  • 170.2026年国家级科研瓶颈:超精密单点金刚石切削(SPDT)光学表面生成
  • SongBloom:革命性歌曲生成框架深度解析——如何通过交织自回归与扩散模型创作完整音乐

月新闻

  • 2026年6月公司网站搭建最新热门渠道测评:四大低成本/零代码平台对比+避坑
  • 【Linux】Linux arm 编译QT程序,出现expected “}“报错
  • 【MATLAB例程】四基站二维AOA定位与距离辅助增强对比仿真。基于角度观测和测距修正的固定目标平面定位精度分析

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号