为什么在Visual Studio Express中Console.Writeline和Console.Write不起作用?

217

我刚刚打开了一个控制台应用程序,并输入了:

Console.WriteLine("Test");

但是输出窗口没有显示这个。我使用Ctrl+W, O进入输出窗口。

但是当我运行程序时,什么也没显示出来。这是不是在Visual Studio 2010 Express中不支持的?


4
正如Leif所说,它会在你看到它之前消失。使用Console.ReadKey() - Xaqron
请参考https://dev59.com/fnM_5IYBdhLWcg3wXx5N#1583569,了解将控制台输出重定向到调试输出窗口的机制。 - yoyo
22个回答

0

可能存在两个问题:

  • 首先,您没有使用using System,这应该在编写使用“System类”的代码之前使用,例如Console.WriteLine()
  • 其次,您没有编写在控制台显示“Test”后发生的操作。

可能的解决方案是:

using System;

namespace Test
{
    public static Main()
    {
        //Print to the console
        Console.WriteLine("Test");

        //Allow user to read output
        Console.ReadKey();
    }
}

Console.ReadKey();之前的代码行上编写Console.Write("Press any key to exit...");也是一种策略,以使用户意识到程序正在结束,他/她必须按任意键退出。


-1

我刚遇到了同样的问题。在我的VS Community 2022中,我发现你需要添加Console.ReadLine(),这样编译器才会在终端窗口上显示。

所以,如果你写了"Hello World",但只看到文件目录,加上Console.Readline()之后就会显示实际的"Hello World"字符串

这是Visual Studio编译器的工作方式。通常在在线编译器中,不需要Console.Readline(),甚至可能被视为错误


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接