
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时执行的特定动作命令
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)