按任意键继续---控制台应用程序

时间:2019-04-05 19:06:52

标签: visual-studio

如果我按任意键而控制台关闭,为什么它是“按任意键继续”而不是“按任意键退出”?

https://i.stack.imgur.com/lUcrC.jpg

1 个答案:

答案 0 :(得分:0)

这可能是由您正在使用的控制台应用程序的编写者最好回答的问题。

话虽如此。概括地说,当您看到该消息时,控制台正在等待输入,这是一个按键。通常使用一些类似于以下代码的代码:

Console.WriteLine("Press any key to continue...");
Console.ReadKey();

一旦您按下该键,就不会明确退出控制台。您只是让程序再次恢复执行。通常,这样的事情将出现在程序的末尾,因此恢复执行将完成程序,但并非总是如此。由于通常在完成程序后从命令行运行控制台程序,因此控制台窗口本身仍然保留。因此,即使程序可能已经完成,命令窗口仍将打开,等待下一个命令。如果是从Visual Studio启动,则不会从命令窗口启动控制台应用程序,而是直接启动*,因此没有其他UI保持打开状态。当然那可能是头发劈裂。

但是,从技术上讲,程序并没有退出,而只是允许其继续运行直到完成/退出。

  • 默认情况下,在VS2019中,C ++和托管控制台应用程序退出时均不再关闭窗口。在VS 2019中,当从另一个主机控制台启动控制台应用程序时,该窗口保持打开状态。