Linux系统下GDB调试
GDB调试具体过程
(1)编译程序时,通过gcc的-g选项为程序添加调试信息,并启动GDB
(2)显示代码及行号,并设置断点
(3)运行程序,可以查看变量的类型与值
(4)继续执行,打印变量的值,进行单步调试
(5)观察变量值变化
发现s3=10不能满足大于10的循环条件
GDB段错误调试
GDB段错误调试可借助core文件,快速定位问题
总结:
(1)编译程序时,通过gcc的-g选项为程序添加调试信息,例如:
gcc –g –o output helloworld.c
(2)通过命令:gdb [程序名] 来启动GDB(该程序名为生成的可执行程序)
(3)通过参数 l或者list 显示代码及行号; b 行号或者b 函数名来设置断点
(4)(gdb) run 运行程序;(gdb)whatis 可查看变量类型
(gdb) p 变量 用来打印变量的值; (gdb) n 用来进行单步调试;(gdb)q 退出调试
(5)产生core文件:ulimit –c num #设定core文件容量(num为数字,为0
是不产生core文件),num的值设置后不能改变
(6)定位问题:gdb配合core文件,定位问题 : gdb 程序名 core文件名