【问题标题】:Console Application does NOT close immediately控制台应用程序不会立即关闭
【发布时间】:2012-08-06 01:27:28
【问题描述】:

我决定再次使用C++,这就是为什么我今天在最新版本中下载了名为Dev-C++ 的IDE。

从几年前学习C++ 开始,我记得main() 函数退出后,控制台窗口会立即关闭。

int main() {}

但上面的代码行并没有让控制台窗口只闪烁和消失。而不是这种行为 - 我实际上预期 - 控制台窗口出现并向我显示以下消息。

Process exited normally.
Press any key to continue . . .

过去几年有没有我没有注意到的变化?我不记得 IDE 做了这些奇怪的事情,更不敢相信 GCC 编译器改变了这种方式!

我的控制台应用程序发生了什么事?如何防止罪魁祸首这样做?!

更新:为了清楚起见,这种行为可能是所谓的功能。但我不想使用此功能,因为我的应用程序用于设置文件夹结构而不显示任何输出。顺便说一下,我的操作系统是 Windows 7。

【问题讨论】:

  • 我知道 Visual Studio 在 IDE 中运行程序时会执行此操作。您是否尝试过通过 shell 调用它?
  • 这个控制台在... mac?视窗? linux?埃尼亚克?

标签: c++ compiler-construction ide console dev-c++


【解决方案1】:

这与编译器或工具链无关,而是 IDE 如何创建控制台/终端。实际上,我发现最好让窗口保持打开状态(以防有任何我想验证的输出)。

【讨论】:

  • 可能是,但我需要禁用它,正如我所提到的。有办法吗?我找不到那个选项。
  • @sharethis:为什么?我的理解是这种行为只是在 IDE 中启动应用程序时出现的(您是否尝试过在外部运行它?),所以这种行为仅在开发期间可用。
  • 你说得对,这种行为只在开发过程中可用,这对我来说是可以接受的。
【解决方案2】:

这可能只是 IDE 行为。我怀疑编译器会在程序末尾插入暂停。 IDE 只是让您在关闭窗口之前查看输出。

【讨论】:

  • 查看我对大卫回答的评论。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-10-26
  • 2021-06-30
  • 2014-09-04
  • 2018-12-06
  • 2019-01-27
  • 1970-01-01
相关资源
最近更新 更多