【问题标题】:Trouble with Console.ReadLine in vscodevscode中的Console.ReadLine出现问题
【发布时间】:2020-03-20 19:01:37
【问题描述】:

大家好,我正在编写我的第一个程序,我选择了 C#。我正在尝试在多项选择测验的开头写一个小对话。根据 youtube 视频和论坛,我应该能够执行 WriteLine,然后执行空白 ReadLine,并且在输入任何内容后程序应该继续。但是当我向它提供输入时,它只会放下一行并继续等待提示。这是vscode引起的问题吗?另外我只是在修改基本的 hello world 脚本。这是一些代码。谢谢。

using System;

namespace C_
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("In 5 seconds the teacher will begin to speak...");
            Console.ReadLine();
            Console.WriteLine("You will be tested for aptitude in the realm of being a worthy human.");
            Console.ReadLine();
        }
    }
}

【问题讨论】:

  • 但是当我向它提供输入时,它只是放下一行并继续等待提示。“放下一行”是指第二行显示文字?您调用了两次ReadLine,因此在您输入一行后,它将继续到下一个ReadLine 并等待您再次输入一行。
  • 在正确使用和理解 API 方面,我建议依靠 documentation 和书籍,而不是 YouTube 视频或论坛,甚至像这样的问答网站。
  • "你的意思是显示第二行文本吗?"不。左边有一个箭头,如果我按回车键或其他任何东西然后输入它会在下面的下一行添加另一个箭头并继续提示我。输入按钮的 4、5 和 6 次敲击也是如此
  • @BACON:“在正确使用和理解 API 时,我建议依靠文档和书籍,而不是 YouTube 视频或论坛,甚至像这样的问答网站。” TBH 这显然是可靠的建议。但是,我无法理解微软网站和其他技术文档上的语言。在深入了解之前,我认为作为外行的我更容易访问 youtube、论坛、本网站等。
  • 也许我应该将“质量指导”(来自主题专家的课程、博客等)作为第三个建议。这可能会克服可访问性的障碍,而无需依赖互联网上的雅虎。另外,我尝试了您的代码,看看问题出在哪里:它卡在Debug Console 中。见https://stackoverflow.com/q/41195432/150605。 (毕竟这不是 API 使用问题,所以我想这可能会让我成为同样的雅虎之一。)

标签: c#


【解决方案1】:

这是 Visual Studio Code 环境的问题。 launch.json 包含将控制应用程序执行方式的设置。

默认情况下,属性:“console”设置为值“internalConsole”。所以它看起来像这样:
“控制台”:“内部控制台”

为了使用Console.ReadLine();Console.ReadKey(); 更改为:
"console": "integratedTerminal"

然后在调试时切换到下方面板中的“终端”。

为了“自动”切换到“终端”面板添加:
"internalConsoleOptions": "neverOpen"

【讨论】:

  • 非常感谢!
猜你喜欢
  • 2022-06-12
  • 2021-05-16
  • 1970-01-01
  • 1970-01-01
  • 2012-08-31
  • 2019-10-24
  • 1970-01-01
  • 1970-01-01
  • 2021-08-14
相关资源
最近更新 更多