为了账号安全,请及时绑定邮箱和手机立即绑定

为什么控制台窗口会在显示输出后立即关闭?

为什么控制台窗口会在显示输出后立即关闭?

芜湖不芜 2019-07-23 14:37:03
为什么控制台窗口会在显示输出后立即关闭?我正在按照MSDN中的指南学习C#。现在,我刚刚尝试了示例1(这里是MSDN的链接),我遇到了一个问题:为什么控制台窗口会在显示输出后立即关闭?using System;public class Hello1{     public static int Main()     {         Console.WriteLine("Hello, World!");         return 0;     }}
查看完整描述

3 回答

?
牧羊人nacy

TA贡献1862条经验 获得超7个赞

这里的问题是他们的Hello World计划出现了,然后它会立即关闭。
这是为什么?

因为它已经完成了。当控制台应用程序完成执行并从其main方法返回时,关联的控制台窗口将自动关闭。这是预期的行为。

如果要将其保持打开以进行调试,则需要指示计算机在结束应用程序并关闭窗口之前等待按键操作。

Console.ReadLine方法是这样做的一种方式。将此行添加到代码的末尾(就在return语句之前)将导致应用程序在退出之前等待您按下某个键。

或者,您可以通过在Visual Studio环境中按Ctrl+ 来启动没有附加调试器的应用程序F5,但这有一个明显的缺点,即阻止您使用调试功能,在编写应用程序时您可能需要这些功能。

最好的折衷方案可能是Console.ReadLine仅在调试应用程序时通过将其包装在预处理程序指令中来调用该方法。就像是:

#if DEBUG
    Console.WriteLine("Press enter to close...");
    Console.ReadLine();#endif

如果抛出未捕获的异常,您可能还希望窗口保持打开状态。要做到这一点,你可以把它Console.ReadLine();放在一个finally块中:

#if DEBUG
    try
    {
        //...
    }
    finally
    {
        Console.WriteLine("Press enter to close...");
        Console.ReadLine();
    }#endif


查看完整回答
反对 回复 2019-07-23
  • 3 回答
  • 0 关注
  • 1086 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信