如何用gdb运行一个程序
格式:gdb ./程序名
例: gdb ./main
程序名后边不需要参加参数,因为参数的获取在这里无效,这里仅仅加载可执行程序信息
进入gdb调试之后的命令操作:
退出:ctrl + d 或 quit
1.r/run:运行程序
2.n/next:逐步调试,如果遇到函数,跳过函数,直接完成功能
3.s/step:逐条调试,如果遇到函数,进入函数,一步一步执行
4.break/b 行号:在某一行设置断点
5.b func:给func这个函数加断点
6.b main.c:20—给main.c的第20行加一个断点
7.info/i b:查看断点信息
8.p 变量:打印变量值
例:p i:打印i的值
9.continue/c:从当前位置继续连续执行,不是单步执行,直接跑完
10.d:删除所有断点
11.d n:删除序号为n的断点
12.start:开始逐步调试
13.list/l:默认查看当前所在位置附近5行代码
14.l -n:指定显示第n行前后5行的代码
15.watch 变量名:跟踪查看一个变量,每次变量的值发生改变的时候都会停下来显示它的值
16.bt:函数调用栈的跟踪,查看程序的函数调用栈信息(在调试段错误方面很有用)
gdb -p pid(进程id):调试正在运行的程序