1

当 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.
4

2 回答 2

0

你真的应该使用 GDB。试用 Insight GDB gui。http://sourceware.org/insight/

于 2010-02-14T05:52:46.657 回答
0

您可能想要使用 Nemiver 调试器。它有 gnome-console 选项卡,您可以在其中与您的应用程序进行交互,就像在没有调试器的情况下一样。

http://www.gnome.org/projects/nemiver

于 2010-02-12T18:35:02.363 回答