【问题标题】:How to stop C++ console application from exiting immediately?如何阻止 C++ 控制台应用程序立即退出?
【发布时间】:2011-02-01 13:04:15
【问题描述】:

最近,我一直在尝试向this website 学习 C++。不幸的是,每当我尝试运行其中一个代码示例时,我都会看到该程序打开了大约半秒,然后立即关闭。有没有办法阻止程序立即关闭,以便我看到我努力的成果?

【问题讨论】:

  • 你是在双击可执行文件吗?您在 Windows 中工作吗?您为什么不在 Command shell 中工作并输入您希望执行的命令?
  • @S Lott:因为如果您在 IDE 中按下“开始”按钮,您就不需要使用控制台了。
  • 你应该考虑买一本好书来学习 C++。网站是很好的资源,但与好的介绍性文字不匹配。这里有一个明确的 C++ 书籍列表:stackoverflow.com/questions/388242/…
  • @Billy 如果在应用程序终止时按下 Go 按钮会关闭应用程序,则说明您使用了错误的 IDE。
  • 以前在这里提问和回答过:stackoverflow.com/questions/902261/…,虽然这个标题更好。

标签: c++ console exit terminate c++-faq


【解决方案1】:

您甚至可以在main() 函数的开头声明一个整数(比如int a;)并将std::cin >> a; 放在返回值之前。所以程序会一直运行,直到你按下一个键并输入。

【讨论】:

    【解决方案2】:

    包括conio.h 并在代码末尾,return 0 之前写_getch();

    【讨论】:

      【解决方案3】:

      你也可以坚持

      while(true)
          ;
      

      for(;;)
          ;
      

      在最后。

      【讨论】:

      • -1 忙碌的旋转是邪恶的。它们会消耗您的 CPU 周期而一无所获。如果你打算做这样的事情,至少在循环体内调用 pause 以产生大部分循环。
      【解决方案4】:

      以调试模式启动,按 F5 运行代码 要停止您的控制台应用程序,请不要单击红十字,而是按 CTRL-break 并且您将在程序结束时遇到所有断点。

      【讨论】:

        【解决方案5】:

        只需将其放在代码的末尾即可:

        而(1){ }

        这个功能会一直持续下去(或者直到你关闭控制台)并且会阻止控制台自行关闭。

        【讨论】:

          猜你喜欢
          • 2014-09-04
          • 1970-01-01
          • 2012-09-13
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多