Linux C : GDB调试命令汇总
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调试命令汇总相关推荐
- linux—常用gdb调试命令汇总
目录 一.准备工作 二.调试命令 (一).查看代码内容(l) (二).开始调试(r) (三).查看当前调试位置(where) (四).断点(b.info b.d.c.disable.enable) 1 ...
- Linux之GDB调试命令
gdb启动 gdb 程序名 l 查看源代码(默认显示十行) l 文件名:行数 l 文件名:函数名 添加断点 break + 行数 (b 也行) b 15 if i == 15 条件断点 i b 查看断 ...
- linux下gdb调试方法与技巧整理
目录 一.gdb简介 二.gdb使用流程 1.启动gdb 2.查看源码 3.运行程序 4.设置断点 5.单步执行 6.查看变量 7.退出gdb 三.gdb基本使用命令 1.运行命令 2.设置断点 3. ...
- gdb调试命令的使用及总结
gdb是一个在UNIX环境下的命令行调试工具.如果需要使用gdb调试程序,请在gcc时加上-g选项.下面的命令部分是简化版,比如使用l代替list等等 1.基本命令 1)进入GDB #gdb test ...
- LINUX下GDB调试
LINUX下GDB调试 (gdb) p result[2]=33 $5 = 33 (gdb) p printf("result[2]=%d\n", result[2]) resul ...
- gdb调试命令与技巧
/********************************************************************* * Author : lile * Modified : ...
- linux下gdb调试方法和技巧详解
linux下gdb调试方法和技巧整理 简介 UNIX或者UNIX-like下调试工具 启动gdb # 1. 在可执行程序不需要输入参数时,我们可以使用 gdb + 可执行程序 gdb ./typeid ...
- linux之gdb调试常用100个技巧
linux之gdb调试常用100个技巧 https://gitlore.com/page/gitlore-git/gdb_tips/index.html 如果不懂linux gdb调试的 看下这篇文章 ...
- linux 下的vi命令汇总
linux 下的vi命令汇总 linux 下的vi 主要作用是什么? Vi是Unix及Linux系统bai下标准的编辑器,由美国加州大学伯克利分校的Bill Joy所创立. 基本上vi可以分为三种状态 ...
最新文章
- 【深度学习入门到精通系列】卷积和池化计算详解
- 操作系统概念学习笔记 11 进程同步(一)
- 田志刚:企业知识管理与用户创造内容(UGC)
- Cloud Native Infrastructures Meetup 北京 | 活动安排
- JDK源码解析之 java.lang.ClassLoader
- HDU 1108 最小公倍数
- 哪些数据库是行存储?哪些是列存储?有什么区别?
- S5PV210的内存映射
- java抢购防止多次请求_springboot项目中接口防止恶意请求多次
- 机器人学 —— 机器人感知(Mapping)
- iOS模拟器中修改textField键盘类型为中文输入和键盘弹出方法
- Linux之rm命令
- mongovue mysql_mongo客户端mongoVUE的使用
- 【python爬虫】QQ空间爬虫 笔记
- C++ 设计模式 面向对象设计原则 相关概念介绍(结合UnrealEngine4)
- 您知道Linux下C语言编程的一些注意事项吗_教育中国
- 单商户商城系统功能拆解47—应用中心—自定义海报
- HTML提供的5种空格实体(nbsp`;`ensp`; `emsp`;` thinsp`; `zwnj`;`zwj`;)
- Qt的主窗口背景设置
- matlab经济建模之离散模型