1、l命令(list)列出所有程序源码
2、b命令(break) 用于设置断点
“break main”表示在 main 函数处设置断点
“break 11”在第 11 行设置断点。
3、c命令用于运行到断点处,输入 c 命令程序就会运行,直到下一个断点处。
4、s命令(step)是单步运行执行,此函数会进入到函数里面。
5、n命令(next)单步运行,但是 n 命令不会进入到函数里面。
6、p 命令(print) 用于打印某个变量值
7、q命令(quit)用于退出调试,开发板上的 gdbserver 也会停止
8、u命令(until)until 命令,可以运行程序直到退出循环体。
until n 命令中,n 为某一行代码的行号,该命令会使程序运行至第 n 行代码处停止。
9、fi 命令(finish) ,结束当前正在执行的函数,并在跳出函数后暂停程序的执行。
10、return 结束当前调用函数并返回指定值,到上一层函数调用处停止程序执行。
11、j命令(jump)使程序从当前要执行的代码处,直接跳转到指定位置处继续执行后续的代码。
12、clear 命令可以删除指定位置处的所有断点
13、clear location
location通常为某一行代码的行号或者某个具体的函数名。
14、delete 通常用来删除所有断点,也可以删除指定编号的各类型断点
delete [breakpoints] [num]
breakpoints参数可有可无,num
参数为指定断点的编号,其可以是delete
删除某一个断点,而非全部,如果不指定 num
参数,则 delete
命令会删除当前程序中存在的所有断点。
15、watch 观察断点监控变量值的变化,只要发生改变,程序就会停止执行。