gdb调试
基本命令
要想使用gdb调试,在编译的时候必须添加-g参数,产生调试信息
# gcc -g debugme.c -o debugme
导入调试代码
- 可以在使用gdb调试时添加参数 gdb a.out
- 也可以在进入gdb后使用file命令导入调试文件,(gdb)> file a.out
运行:run
run后面可以添加调用参数,或者直接用 set args 进行设置
查看代码:
list n1,n2 列出n1到n2之间的代码
list 不跟参数列出当前的十行代码
查看变量值:
print var
查看调用栈:
backtrace
设置断点:
break linenum
break funcname
设置满足一定条件的断点:
break linenum if expr
break funcname if expr
查看断点情况: info break
删除断点:
基于断点号删除断点:
delete : 删除所有断点
delete breaknum : 删除标号为breaknum的断点
delete breaknum1,breaknum2 : 删除标号在breaknum1到breaknum2之间的所有断点
基于行号删除断点:
clear location : 删除当前行的所有断点
clear funcname :删除funcname函数的所有断点
clear linenum : 删除linenum行的所有断点
执行:
单步调试: step, next
两者的区别是,当又函数的时候,step将跟入函数内部;next会跳过函数
continue到下一个断点
终止
跳出函数: finish
终止: q
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。