gdb调试命令是什么?

gdb调试命令是什么?,第1张

1、对于在应用程序中加入参数进行调试的方法:

直接用 gdb app -p1 -p2 这样进行调试是不行的。

需要像以下这样使用:

#gdb app

(gdb) r -p1 -p2

或者在运行run命令前使用set args命令:

(gdb) set args p1 p2

可以用show args 命令来查看

2、加入断点

break <linenumber>

break <funcName>

break +offset

break -offset

(在当前行号的前面或后面的offset行停住。)

break filename:linenum

在源文件filename的linenum行处停住。

break filename:function

在源文件filename的function函数的入口处停住。

扩展资料:

一般来说,GDB主要帮助完成下面四个方面的功能:

1、启动程序,可以按照你的自定义的要求随心所欲的运行程序。

2、可让被调试的程序在你所指定的调置的断点处停住。(断点可以是条件表达式)

3、当程序被停住时,可以检查此时你的程序中所发生的事。

4、可以改变你的程序,将一个BUG产生的影响修正从而测试其他BUG。

参考资料来源:百度百科-gdb

1、file

载入调试程序,同时加载符号表

2、core-file

载入core dump程序映像,

gdb命令行参数形式: (-c | -core) core-file

3、symbol-file

从指定文件载入符号表

gdb命令行参数形式: (-s | -se | -symbols) symbol-file

4、directory

添加源文件搜索路径

gdb命令行参数形式: (-d | -directory) source-directory

5、r — run

启动调试程序,可传入参数

6、c — continue

跳过断点继续执行

7、s — step

单步执行,进入子程序内部

8、n — next

单步执行,越过子程序执行

9、b — break

设置断点,使用行号或函数名

10、i — info

显示断点info breakpoints

11、d — delete

删除断点delete breakpoints

12、bt — backtrace

打印栈帧

13、p — print

打印变量

/x 按十六进制格式显示变量

/d 按十进制格式显示变量

/u 按十六进制格式显示无符号整型

/o 按八进制格式显示变量

/t 按二进制格式显示变量

/a 按十六进制格式显示变量

/c 按字符格式显示变量

/f 按浮点数格式显示变量

14、l — list

显示程序源码

15、jump

跳转到第n行处开始调试

16、call

调用函数

17、finish

退出当前函数返回到它的调用函数

18、watch

设置观察点,当表达式的值改变时停止运行

19、awatch

设置观察点,当表达式的值被读取或发生改变时停止运行

20、commands

设置当遇到断点n时执行的特定动作命令


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11371742.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存