gdb
GUN Debugger
注意
在程序编译过程中,使用-g选项
gcc -g -o test test.c
gdb filename
这里的filename是可执行文件,而不是源文件
基本命令
file命令
quit:
shell: 切入shell当中
exit:从shell界面退出到gdb
list:列出调试程序的源代码
list
list n
list begin,end
list -
list +
show listsize:显示list默认显示的行数
set listsize n:修改list默认显示的行数为n行
控制程序的执行
break:设置断点
break 10:在第10行设置断点
break main:在main函数处设置断点
info breakpoints(info break):查看断点
delete:删除所有断点
delete n:删除编号为n号的断点
程序的运行
run:运行程序,执行到断点处,或者直到程序结束
next(n):单步执行,不进入函数内部
step:单步执行,进入函数内部
continue:程序从当前位置开始运行,直到断点处,或者直到程序结束
kill:终止本次调试
查看运行时的数据:
print:查看变量的值/表达式的值
print i
print i*j
print arry[n]@m //显示从下标为n开始的m个数
set:修改变量的值
set variable j=10
print j=10
display:动态观察变量的值
info display:显示当前设置的表达式的清单
delete display:取消对设置的表达式的自动显示功能
显示函数调用堆栈的信息