2024年4月16日发(作者:)
GDB调试命令
常用的gdb命令
backtrace 显示程序中的当前位置和表示如何到达当前位置的栈跟踪(同义词:where)
breakpoint 在程序中设置一个断点
cd 改变当前工作目录
clear 删除刚才停止处的断点
commands 命中断点时,列出将要执行的命令
continue 从断点开始继续执行
delete 删除一个断点或监测点;也可与其他命令一起使用
display 程序停止时显示变量和表达时
down 下移栈帧,使得另一个函数成为当前函数
frame 选择下一条continue命令的帧
info 显示与该程序有关的各种信息
jump 在源程序中的另一点开始运行
kill 异常终止在gdb 控制下运行的程序
list 列出相应于正在执行的程序的原文件内容
next 执行下一个源程序行,从而执行其整体中的一个函数
print 显示变量或表达式的值
pwd 显示当前工作目录
pype 显示一个数据结构(如一个结构或C++类)的内容
quit 退出gdb
reverse-search 在源文件中反向搜索正规表达式
run 执行该程序
search 在源文件中搜索正规表达式
set variable 给变量赋值
signal 将一个信号发送到正在运行的进程
step 执行下一个源程序行,必要时进入下一个函数
undisplay display命令的反命令,不要显示表达式
until 结束当前循环
up 上移栈帧,使另一函数成为当前函数
watch 在程序中设置一个监测点(即数据断点)
whatis 显示变量或函数类型
1
GDB调试命令
GDB命令分类详解
一:列文件清单 ................................................................................................................................................2
二:执行程序 ....................................................................................................................................................2
三:显示数据 ....................................................................................................................................................2
四:断点(breakpoint) .........................................................................................................................................3
五.断点的管理 ................................................................................................................................................3
六.变量的检查和赋值 .....................................................................................................................................4
七.单步执行 ....................................................................................................................................................4
八.函数的调用 ................................................................................................................................................4
九.机器语言工具 ............................................................................................................................................4
十.信号 ...........................................................................................................................................................4
十一.原文件的搜索............................................................................................................................................5
十二. UNIX接口 ...............................................................................................................................................5
十三. 命令的历史 .............................................................................................................................................5
十四. GDB帮助 ..............................................................................................................................................5
十五. GDB多线程 ..........................................................................................................................................6
十六. GDB使用范例 ......................................................................................................................................7
一:列文件清单
1. List
(gdb) list line1,line2
二:执行程序
要想运行准备调试的程序,可使用run命令,在它后面可以跟随发给该程序的任何参数,包括标准输
如果你使用不带参数的run命令,gdb就再次使用你给予前一条run命令的参数,这是很有用的。
利用set args 命令就可以修改发送给程序的参数,而使用show args 命令就可以查看其缺省参
(gdb)set args –b –x
(gdb) show args
入和标准输出说明符(<和>)和外壳通配符 (*、?、[、])在内。
数的列表。
backtrace命令为堆栈提供向后跟踪功能。
Backtrace 命令产生一张列表,包含着从最近的过程开始的所以有效过程和调用这些过程的参数。
三:显示数据
利用print 命令可以检查各个变量的值。
(gdb) print p (p为变量名)
(gdb) whatis p
type = int *
whatis 命令可以显示某个变量的类型
print 是gdb的一个功能很强的命令,利用它可以显示被调试的语言中任何有效的表达式。表达式除了
包含你程序中的变量外,还可以包含以下内容:
2


发布评论