代码之家  ›  专栏  ›  技术社区  ›  Jérôme

在Windows上使用qt creator的控制台应用程序:关闭控制台前等待

  •  4
  • Jérôme  · 技术社区  · 15 年前

    我在Windows上用qt creator运行一个非常简单的控制台应用程序。

    当启动它时,DOS控制台被打开,我的输出被显示,但是应用程序终止,控制台立即关闭。

    如何确保控制台在用户按下某个键之前保持打开状态?

    2 回复  |  直到 15 年前
        1
  •  3
  •   Jérôme    15 年前

    由于Qt Creator 1.3.0,它更容易:

    project 选项卡(在左侧)编辑项目的设置。

    在本节中 Run Settings Show details 并检查 Run in Terminal 复选框。

    因此,应用程序将在控制台窗口中启动,控制台窗口将等到按下Enter键后再关闭。

    不再需要在代码中添加一些行!

        2
  •  1
  •   Matthieu    15 年前

    以下是两种解决方案:

    #include <QTextStream>
    #include <QFile>
    //#include <conio.h> // for getch()
    
    int main(int argc, char *argv[])
    {
    
        // JC and friends code
    
        // Qt Solution
        QTextStream Qin(stdin);
        forever
        {
            QString Line = Qin.readLine();
            if (!Line.isNull())
            {
                break;
            }
        }
    
        // conio solution
        //getch();
        return 0;
    }
    

    这两个解决方案都在Windows Vista上用qt creator 1.2.1进行了测试!

    希望有帮助;—)