使用gdb调试程序前,编译命令须加-g参数,如gcc -g -o test test.c(-g在前)
启动gdb,如#gdb test
常用命令,括号中是命令缩写:
run(r):执行当前被调试的程序
break(b):设置端点,如(gdb) b 10
list(l):列出正在调试的应用程序的源代码,显示10行代码
next(n):单步执行
print(p):显示变量(表达式)的值,如(gdb) p a,(gdb) p *a
continue(c):继续执行正在调试的程序,至断点处。
bt:显示所有的调用栈帧。该命令可用来显示函数的调用顺序。
step(s):转入子函数。
finish:转出子函数。
quit(q):退出gdb调试。
使用gdb调试程序前,编译命令须加-g参数,如gcc -g -o test test.c(-g在前)
启动gdb,如#gdb test
常用命令,括号中是命令缩写:
run(r):执行当前被调试的程序
break(b):设置端点,如(gdb) b 10
list(l):列出正在调试的应用程序的源代码,显示10行代码
next(n):单步执行
print(p):显示变量(表达式)的值,如(gdb) p a,(gdb) p *a
continue(c):继续执行正在调试的程序,至断点处。
bt:显示所有的调用栈帧。该命令可用来显示函数的调用顺序。
step(s):转入子函数。
finish:转出子函数。
quit(q):退出gdb调试。
help:帮助
info files:显示被调试文件的详细信息。
info func:显示所有的函数名称。
info local:显示当函数中的局部变量信息。
info prog:显示被调试程序的执行状态。
info var:显示所有的全局和静态变量名称。
info line:显示当前行的信息。
help:帮助
info files:显示被调试文件的详细信息。
info func:显示所有的函数名称。
info local:显示当函数中的局部变量信息。
info prog:显示被调试程序的执行状态。
info var:显示所有的全局和静态变量名称。
info line:显示当前行的信息。