VS2017使用时为什么非要加getchar或者system("pause")才能停止

我前段时间使用VS2017时写一段代码如下:
#include
int main(void)
{
printf("aaaaa!\n");

    return 0;

}
可以直接运行,不闪屏,现在使用直接闪屏,而且还必须添加getchar或者system("pause");
才能正常运行,很难受,求解怎么才能可以新建工程而不需要getchar或者syste
m(“pause”)
以前有个win32控制台程序,现在怎么没有了?真的很烦这东西,希望大神指点迷津!

虽然真的很想帮助你,但是,后来我就是慢慢习惯了加上那个system("pause")
感觉这是个好习惯,可能会加深这些东西的理解
我记得我在还没有学图形界面的时候,做应用程序的时候,如果想要做的好看点的话
最好就加上system("pause") 或者是 system("clc")
讲真,多打打这个 ,不算什么坏事。
可能会这些东西会有一个更深的理解

你贴出的代码不闪屏才怪,printf,标准输出打印后,直接main函数退出,你说以前不闪屏,简直是扒瞎,如果调试状态下不想闪屏,你可以在return语句前加断点

vs2015 直接运行会有一个暂停,但是调试会直接闪下,结尾打断点就好

之前用codeblocks 是return 之后,黑窗口会给个执行结果,vs执行return 之后,就直接结束了。
首先,个人认为 return 之后,直接结束时正常的,因为程序结束了,也不应该有额外信息。应该是codeblocks做了特殊处理,为了方便查看打印信息什么的,自己加上的

Ctrl+F5 应该可以帮你

之前用codeblocks 是return 之后,黑窗口会给个执行结果,vs执行return 之后,就直接结束了。
首先,个人认为 return 之后,直接结束时正常的,因为程序结束了,也不应该有额外信息。应该是codeblocks做了特殊处理,为了方便查看打印信息什么的,自己加上的

想看结果,去dos里面执行

vs2017 直接运行会有一个暂停,但是调试会直接闪下,结尾打断点就好

要在调试停止时关闭自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时取消自动关闭控制台”。

在工程上右键--->属性--->配置属性--->连接器--->系统--->子系统(在窗口右边)--->下拉框选择控制台(/SUBSYSTEM:CONSOLE)