gdb小结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gdb小结相关的知识,希望对你有一定的参考价值。

1 启动gdb
+ gdb 程序名

2 载入程序
+ file 程序名

3 退出gdb
+ quit Ctrl-D

4 运行程序
+ run + 参数

5 查看程序信息
+ 查看断点信息 info br
+ 查看当前源程序 info source
+ 查看堆栈信息 info stack
+ 查看当前的参数 info args

6 列出一段源程序
+ 列出某个函数 list FUNCTION
+ 列出某行函数 list LINENUM
+ 接着前一次继续显示 list
+ 显示前一次之前的源程序 list -
+ 显示另一个文件的一段程序 list FILENAME:FUNCTION or list FILENAME:LINENUM\

7 设置断点
+ 在函数入口设置断点 break FUNCTION
+ 在当前源文件某行上设置断点 break LINENUM
+ 在另一源文件的某行设置断点 break FILENAME:LINENUM
+ 在某个地址上设置断点 break *ADDRESS
+ 条件断点 break ..if COND
+ 删除断点 delete BREAKNUM

8 设置监视点
+ watch EXPRESSION

9 检查数据
+ print exp

10 修改变量值
+ set varible=value

10 检查内存值
+ x /NFU ADDR
其中x是examine的意思,N代表重复数,F代表输出格式(见2.13),U代表每个数据单位的大小。U可以去如下值:
b :字节(byte)
h :双字节数值
w :四字节数值
g :八字节数值
因此,上面的指令可以这样解释:从ADDR地址开始,以F格式显示N个U数值。
例如:x/4ub 0x4000
会以无符号十进制整数格式(u)显示四个字节(b),0x4000,0x4001,0x4002,0x4003。

11 单步执行指令
+ step 跟踪进入一个函数
+ next 则不会进入函数

12 继续执行指令
+ continue

 

以上是关于gdb小结的主要内容,如果未能解决你的问题,请参考以下文章

gdb调试小结

gdb调试小结

coredump调试小结

Linux GCC GDB 第二节

段错误

无标题Linux开发工具二