这是我尝试使用cgdb调试的非常简单的程序。问题是我进入" scanf"它会提示输入,但是一旦我输入输入后按Enter键(下例中的2),它似乎进入一个无限循环。它虽然在gdb中工作正常。
#include <cstdio>
using namespace std;
int main()
{
int n;
scanf("%d", &n);
printf("%d\n", n);
return 0;
}
这是终端中的执行跟踪:
键入&#34; apropos word&#34;搜索与&#34; word&#34;相关的命令... 从测试中读取符号......完成。
(gdb)开始
0x400585处的临时断点1:文件test.cpp,第7行。 启动程序:/ home / Alex / Desktop / test
临时断点1,test.cpp上的main():7
(gdb)next
2(这是我的输入)
无限循环从这里开始。
答案 0 :(得分:1)
根据cgdb的信息页面,你需要:
要调用tty窗口,请点击&#39; T&#39;在命令模式(逃脱)
从信息页面中提取:
将I / O发送到正在调试的程序
这种技术类似于进入和退出&#34; GDB模式&#34;。 tty窗口不是 默认可见。这是因为只有用户才需要它 希望将数据发送到正在调试的程序。显示tty 窗口,点击“T&#39;在命令模式下。