VS Code中C#代码的Console.ReadLine()无法正常工作求助
解决VS Code中C#控制台程序Console.ReadLine()无响应的问题
哦,我之前在VS Code里写C#控制台程序时也踩过这个坑!你的代码本身完全没问题——这段逻辑在正常的控制台环境下运行肯定是能输出结果的,问题出在VS Code默认的运行方式上。
为什么会出现这个问题?
大部分时候是因为你用了Code Runner插件的「Run Code」按钮来运行程序。这个插件虽然方便,但它的运行机制不会给控制台程序提供交互输入的环境,导致Console.ReadLine()一直在等待输入,程序卡在这里根本执行不到最后一行的输出,甚至可能直接悄悄结束进程,让你以为代码没生效。
两种可行的解决方法:
方法一:手动在终端编译运行
- 打开VS Code的集成终端(快捷键`Ctrl + ``),切换到你的代码文件所在的文件夹
- 如果是用.NET Framework,输入命令编译:
csc Program.cs;如果是.NET Core/.NET 5+,用dotnet build - 编译完成后,运行生成的可执行文件:Windows下输入
Program.exe,Linux/macOS下输入./Program
这时候终端就会正常提示你输入姓名,输入后就能看到Hi! XXX的输出了。
方法二:用VS Code的调试模式运行
- 按
F5键启动调试,第一次会提示你生成调试配置文件,选择对应的C#环境(比如.NET Core) - 生成
launch.json后,再次按F5,VS Code会在一个支持交互的终端窗口里运行程序,你就能正常输入并看到结果了。
- 按
顺便再确认下你的代码,逻辑完全没问题:
Console.WriteLine("Enter your name : "); string name = Console.ReadLine(); Console.WriteLine("Hi! {0}", name);
试试上面的方法,应该就能解决这个问题啦!
内容的提问来源于stack exchange,提问作者Marx
相关产品推荐
相关产品推荐

