使用MS Visual Studio 2010,该程序基于C#控制台应用程序。
我的while
循环中包含sInput = Console.ReadLine();
,然后是switch
。
当我运行代码时,sInput
循环首次出现时会跳过while
(这会自动提供default
的{{1}}值。
但它可以在switch
循环的第二次出现时正常工作。
为什么它会在第一次出现时跳过While
?
sInput
编辑:添加了我的所有代码,以确定问题是否源自while循环之外的先前代码。
答案 0 :(得分:1)
我的猜测是输入缓冲区不为空且包含换行符。可能是您提供的代码在某些其他数据输入发生的情况下被取消了吗?
尝试在跳过行之前添加以下代码:
while (Console.KeyAvailable)
Console.ReadKey(true);