我刚刚开始学习C#,我正在练习控制台应用程序中的一些基本编码,我正在尝试制作一个程序,通过使用无限循环和一个程序,将两个整数添加在一起方法。但是我希望能够通过按下逃生来结束循环,但是问题是,当我首次完成循环完成后,除了逃生之外,我将其按下时,该程序崩溃了。它说"输入字符串不是正确的格式。"任何建议都将不胜感激!
谢谢!
namespace ConsoleApplication2
{
class Program
{
static void Addxy(int x, int y)
{
Console.WriteLine(x+y);
}
static void Main(string[] args)
{
while(true)
{
Addxy(Convert.ToInt32(Console.ReadLine()), Convert.ToInt32(Console.ReadLine()));
ConsoleKeyInfo end;
end = Console.ReadKey();
if (end.Key == ConsoleKey.Escape)
break;
else
{
}
}
}
}
}
您在Console.ReadKey()
之前有两个Console.ReadLine()
。因此,前两个输入应为数字,然后是逃生键以终止程序。切记在前两个数字输入后按Enter。
您可以使用break
结束循环,但是更优雅的方法是定义一个变量,该变量确定循环是否应继续运行。这是我对您的问题的建议:
static void Main(string[] args)
{
bool keepLooping = true;
while (keepLooping)
{
//Do your stuff here
if (Console.ReadKey().Key == ConsoleKey.Escape)
{
keepLooping = false;
}
}
}
,如果您喜欢的话,甚至更短的版本:
static void Main(string[] args)
{
bool keepLooping = true;
while (keepLooping)
{
//Do your stuff here
keepLooping = Console.ReadKey().Key != ConsoleKey.Escape;
}
}