控制台应用程序退出完成(Visual Studio)

时间:2016-06-24 10:33:01

标签: visual-c++ visual-studio-2015

但是,它并不是关于代码的。但是我在VS中编写的控制台应用程序将在应用程序完成其工作后立即退出(无论是调试还是通过双击* .exe直接打开)。如何防止这种原因我需要查看输出。

1 个答案:

答案 0 :(得分:1)

实际上它与代码有关。在您的控制台应用程序中,您具有main()函数,因为这是C ++,它将以return 0;语句(或类似语句)结束。要使应用程序在完成后暂停,您需要做的就是将最后一行更改为return fgetc(stdin);,现在它将等到您按下回车键。

但是要扩展BeyelerStudios所说的你可能想要比这更进一步,并使它更聪明一些。所以:

#ifdef DEBUG
  _tprintf(L"Press the Enter key to exit\n");
  return fgetc(stdin);
#else
  return 0;
#endif

Visual Studio Output窗口将显示在DEBUG配置中传递给函数OutputDebugString的任何字符串。所以如果你只想要一个你可以看到的字符串,你可以使用它。

将参数传递给您的函数可能是最好的解决方案,您仍然可以在发布版本中暂停,但这将需要最多的工作。

有一种最终方法。而不是按F5打开命令提示符(WindowsKey + R并键入CMD),cd到写目录并从那里运行exe,所有输出将在程序存在后保留在窗口中。但是,如果您需要调试器,这将无济于事。

希望有所帮助。