一、GDB简介

GDB是GNU发布的一款功能强大的程序调试工具。GDB主要完成下面三个方面的功能:

  1. 启动被调试程序。
  2. 让被调试的程序在指定的位置停住。
  3. 当程序被停住时,可以检查程序状态(如变量值)

二、GDB使用流程

//1.编译生成可执行文件:
gcc -g -o test hello.c
gcc -g hello.c -o test //等效
//2.启动GDB
gdb test
//3. 在函数处设置断点
break main
//4. 运行程序
run
//5. 利用更加丰富的gdb命令对程序进行调试

三、常用GDB命令

	//括号中为缩写用法
list(l) //查看程序
break(b) //函数名在某函数入口处添加断点
break(b) //行号在指定行添加断点
break(b) //文件名:行号在指定文件的指定行添加断点
info break //查看所有设置的断点
delete //断点编号删除断点 next(n) //步过 ,单步运行程序(不进入子函数)
step(s) //步进,单步运行程序(进入子函数)
continue(c) //继续运行程序
print(p) 变量名 //查看指定变量值
set var=value // 设置变量的值
quit(q) //退出gdb

最新文章

  1. Atitit.每月数据采集与备份 v4
  2. JSONObject put,accumulate,element的区别
  3. Quatre 2D的绘图功能的三个步骤(上下文,绘图,渲染)
  4. 洛谷P1755 斐波那契的拆分
  5. vs2012+opencv2.4.7 实现单张人脸识别
  6. c++ 派生类向基类转换的可访问性
  7. HDU 5938 Four Operations 【贪心】(2016年中国大学生程序设计竞赛(杭州))
  8. js输出单一字符字串
  9. Android 使用 intent 实现简单登陆页面
  10. OpenWrt配置opkg.conf
  11. C/C++语言简介之优缺点
  12. UML图概述
  13. Practice| 类型转换| 逻辑运算
  14. Nginx REWRITE阶段
  15. 032 HDFS中高可用性HA的讲解
  16. sap 提供服务
  17. Python中super()的用法
  18. [java] 虚拟机(JVM)底层结构详解[转]
  19. iOS 获取设备的各种信息的方法
  20. 生死系列--SongXingZhi

热门文章

  1. 2A - Stone
  2. 安装jdk1.8,编写环境变量
  3. Qt 学习之路 2(42):QListWidget、QTreeWidget 和 QTableWidget
  4. JavaWeb学习笔记(九)—— JSTL标签库
  5. 制作一句话图片马(NO)
  6. HTML <form> target 属性
  7. 24个常用 Python 实现
  8. 【算法笔记】B1011 A+B 和 C
  9. UVA - 10125 哈希
  10. 03-树2 List Leaves (25 分)