摘要:在vs2010下,我们调试起来相当方便,但是使用gdb调试的时候,却困难重重。本文主要为你介绍如何在gdb下进行调试和如何将gdb打造成一个集成的编译环境。
1.gdb命令小结
设置断点:break(b) linenum
b functionname
如果是在调试多个文件,可以这样设置断点:
(gdb) break [<file-name>:]<func-name> (gdb) break [<file-name>:]<line-num> |
跳转:
从当前函数退出:finish
从当前循环退出:until
查看:
变量的值:p name
代码:list linenum
list funcname
运行:
运行到地一句:start
连续运行:run
继续运行:continue
单步运行:next
进入函数内部:step
2.gdb的替代——集成开发环境
linux下的调试环境,如果使用vim和gdb会很容易让人崩溃,此时我们不妨在调试的时候使用一些IDE,比如Anjuta
3.其他的一些集成环境
4.多文件调试
b main.c:10
5.自动显示:
display <expr> display/<fmt> <expr> display/<fmt> <addr>gdb attach 调试
5.几个常用的需求
break foo if x>0 commands printf "x is %d\n",x continue end
断点设置在函数foo中,断点条件是x>0,如果程序被断住后,也就是,一旦x的值在foo函数中大于0,GDB会自动打印出x的值,并继续运行程序。
如果你要清除断点上的命令序列,那么只要简单的执行一下commands命令,并直接在打个end就行了。