当 C++ 程序从 读取时cin,ddd 会为它提供“1”,而不是让我在其控制台中键入输入。由于程序读取交互式命令,“1”是无效命令,而 ddd 似乎有无限的供应,结果是“无效命令”输出的无限循环。
有没有人遇到过这种行为并且知道如何克服这个问题?我感到非常沮丧,以至于在 21 世纪我必须使用命令行 gdb,就像我 20 年前在学校所做的那样。eclipse 的内置调试器太慢而无法使用。
ddd 版本是 3.3.11。代码片段:
while (true)
{
cout << greeting;
string cmd;
cin >> cmd;
if (cmd == "e")
{
// etc.