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

【2013-12-17】C语言开发笔记:GDB

[历史归档]本文原发布于 cstriker1407.info 个人博客,内容为历史存档,仅供参考。
发布时间:2013-12-17| 标题:C语言开发笔记:GDB分类:编程 / C && C++ |标签:C&&C++·gdb


C语言开发笔记:GDB

    • 被测试代码
    • DEBUG 步骤
    • GDB 常用命令
    • 备注

整理 Linux 下使用 GDB 调试 C 程序的常用命令备忘。

被测试代码

#include<stdio.h>intfunc(intn){intsum=0,i;for(i=0;i<n;i++){sum+=i;}returnsum;}intmain(void){inti;intresult=0;for(i=1;i<=100;i++){result+=i;}printf("result[1-100] = %d\n",result);printf("result[1-250] = %d\n",func(250));}

DEBUG 步骤

使用 GCC 编译,注意加入-g调试信息参数:

gcc-gtest.c

然后用gdb a.out进入调试模式。

GDB 常用命令

命令说明
help list显示命令 list 的帮助
l/list列出代码
b 16/break 16在第 16 行加断点
b func/break func在函数 func 加断点
info break列出当前所有断点
clear/enable/disable断点管理
r/run开始执行程序
n/next单步执行
c/continue继续执行
p i/print i显示变量 i 的值
bt/backtrace查看函数堆栈(bt full同时打印局部变量)
set args指定运行参数(如set args 10 20 30
q/quit退出 GDB
回车重复上一条命令

备注

更多系统性的 GDB 资料可参考陈皓的博文:http://blog.csdn.net/haoel/article/details/2879

http://www.cnnetsun.cn/news/3361155.html

相关文章:

  • Apex英雄实战用YOLOv5目标识别工具包:含训练推理全流程与Windows MSDK接口
  • 【2013-12-11】C语言代码检测:splint的使用
  • Unity WebGL部署Tomcat报错:一个勾选解决Gzip压缩冲突
  • C++ CAD数据交换:libdxfrw库读写DXF/DWG文件实战指南
  • 终极指南:快速检测微信单向好友的完整解决方案
  • 经历多了年纪大了,人就会自大?
  • 超低功耗电源管理系统设计与优化实践
  • Halcon单目相机标定技术与工程实践详解
  • 一张图讲清楚:RAG 不是搜索框,而是给模型配资料员
  • 企业级AI工作流引擎Codex架构与部署实战
  • 俄罗斯酒类营销合规指南:法律红线、文化禁忌与精准触点设计
  • 高通QAIRT工具链:移动端AI模型量化与性能优化实战
  • Android-EDLA XTS报告和日志分析
  • AI提示词设计黄金法则与行业应用实践
  • C++单例模式深度解析:从线程安全到Meyers‘ Singleton实战
  • 工业负载控制方案:TPD2017FN与PIC18F46K20的协同设计
  • 会议室视频显示设备选型实战指南
  • Milvus 完整执行流程:写入、检索两大阶段拆解
  • 如何快速实现高效文件下载:LinkSwift网盘直链下载助手终极指南
  • 【Linux】系统盘与数据盘分离实战:从分区规划到应用迁移的完整避坑指南
  • 《刺客信条:黑旗》VBS一键启动虚拟机整合包部署指南
  • python数据可视化技巧的100个练习 -- 13. 随机数据的密度图
  • C++异常处理深度解析:从RAII到实战性能优化
  • MES/MOM系统 | OPC UA+云平台:跨厂区生产数据标准化互通落地步骤
  • Python性能优化的5个零成本写法:从内存分配到字节码执行
  • 前端开发者如何高效应用AIGC技术
  • GoogleTest集成Abseil:C++单元测试框架的依赖治理与生态演进
  • CSS + Vue3 + TS + Setup 实现 7 种经典呼吸灯效果(前端常用动画合集) - 附完整示例(组件复用)
  • C++智能指针实战指南:从RAII原理到内存安全编程
  • 43.嵌入式C语言进阶:位带操作——给每个比特一个专属地址,解决GPIO操作的竞态问题