cgdb的特性
- 高亮的源代码窗口
- 可视化的断点
- 常用功能的键盘快捷键
- 搜索源代码(通过正则表达式)
cgdb的安装
yum install cgdb
文件对话窗口
通过文件对话框窗口,用户可以浏览和选择他们想要查看的文件。它为用户提供了一个与被调试程序有关的所有源代码文件的列表。如果没有文件被显示,可能是因为没有程序正在被调试,或者是因为被调试的可执行程序中没有调试信息,在这些情况下,文件对话框窗口不会打开,状态栏上会显示一条错误信息。
可以通过在代码窗口中键入o 来打开文件对话框窗口。当打开了文件对话框窗口后,需要通过键入 q 来关闭它。可以通过方向键来选择想要的文件,甚至可以使用正则表达式去搜索文件。在文件数量越来越多的情况下,这个功能可以省去很多的时间。
tty窗口
#include <stdio.h>
int main(){
int num;
scanf("%d", &num);//cgdb到这里会陷入循环输入,需要用TTY窗口读入数据
printf("%d", num);
return 0;
}
用户进行调试时,如果遇到上述代码的scanf()语句并且在调试的时候键入值后,会陷入死循环,所以这个时候如果我们用cgdb的话,调试必须要打开TTY窗口,在TTY窗口中输入的数据将被直接传给被调试的程序(即可以是scanf()),在命令模式下按 T 键可以显示这个窗口。在按下 T 键之后,你会发现在代码窗口和cgdb窗口中间出现了一个新的窗口。它叫做tty窗口。当tty窗口打开时,所有从程序输出的数据将会被显示在那里。
调试命令
cgdb窗口命令
让用户进入gdb模式:i
让用户进入TTY模式: I
代码窗口
向上翻一页:ctrl b
向上翻半页:ctrl u
向下翻一页:ctrl f
向下翻半页:ctrl d
移动到文件顶部:gg
移动到文件底部:G
从当前光标向下搜索:/
从当前光标向上搜索:?
打开文件对话框窗口(用户查找):o
cgdb命令窗口的调整
缓慢缩小:-
缓慢增大:=
快速缩小:shift -
快速增大:shift +
参考:https://github.com/leeyiw/cgdb-manual-in-chinese/blob/master/SUMMARY.md