C语言第二十天笔记
GDB
GDB是GUN开源组织发布的一款强大的Unix/Linux下的程序调试工具。
GDB常用命令
GDB查看源代码指令------list
显示指定位置的周围的源代码;可以通过行号、文件名、函数名以及三者之间的组合来定位指定位 置,显示代码的行数可以通过设置listsize来设定,但是该设置只是本次有效;简化命令:l
set listsize 20 # 每次list显示指定区域的20行代码,默认10行
show listsizelist linenumber # 显示 linenumber附近的代码
list 50 # 显示当前源文件的第50行的附近代码
list function # 显示函数代码
list test.c:30 # 显示指定源文件的第30行的附近代码
list +/- # 向后/前显示源代码
list <first>,<last> # 显示first ,last之间的内容
list 100,200 # 显示当前源文件代码行100到200间的行
GDB查看设置------info
info registers # 查看寄存器信息
info frame # 查看栈信息(帧信息)
info locals #显示当前函数的所有局部变量名及其值
info break/b #查看断点信息
info args #显示当前函数的参数名及其值
info prog #查看调试程序的执行状态
info files #显示调试文件的详细信息
显示调试的代码
设置显示的行数
c
set listsize 20 //设置显示行数,默认10行
list 1/l 1 //1是起始行号
GDB运行程序
c
run
设置调试断点
c
b 15 //15设置断点
清除断点
c
info break //查看断点信息
delete break 1 //删除编号为1的断点
clear linenum //清除linenum行上所有断点 clear 15
调试代码
c
run //运行程序
continue //运行到条件满足为止
查看变量值
c
display //变量名
退出GDB
c
quit/q