配置从Debug更改为Release后,C ++ exit(0)不再存在于我的程序中

时间:2014-11-29 06:46:52

标签: c++ visual-studio visual-studio-2013 exit

通常std::exit(int)会立即终止你的程序,但出于某种原因,我放在exit(0)的任何地方,而不是立即退出,它会在控制台上询问“按任意键继续...”第一。

即使我将exit(0)作为main()中的第一行,它仍会提示我在退出前按一个键。

我唯一做的就是将我的项目更改为在发布模式下编译,而不是在Visual Studio中调试, 通常在调试中,我会看到项目运行为:
C:\User\<Username>\<File path>\<Project name>\Debug\<Project name>.exe
但是在发布模式下,它运行如下:
C:\Windows\system32\cmd.exe

我不知道这是否有所不同。
有没有办法在释放模式下调用诸如exit()之类的命令后立即终止它?

1 个答案:

答案 0 :(得分:2)

这不是唯一改变的事情。您可能也在使用&#34; Ctrl + F5&#34;运行程序。而不只是&#34; F5&#34;。或者在调试模式下启用调试检查,用于检测程序中的崩溃或某些事情,而不再被检测到。或者其他一些可能的变化。

在任何情况下,直接运行您的可执行文件(例如从Windows资源管理器或命令提示符),并看到这个&#34;按任意键继续...&#34;不会出现在那里。你也可以使用&#34; F5&#34; (默认情况下)虽然这种替代方案有其他副作用。

我的建议是不要担心&#34;按...&#34;在末尾。只是VS伸出援助之手,在您发送/安装/使用最终应用程序时不会发生。