【发布时间】:2012-06-27 13:14:00
【问题描述】:
我仍然是高级编程语言的初学者,所以我不知道这是否是一个简单的解决方案,但无论如何我很乐意学习。我在 C# 中编写了一个小警报程序,让用户输入警报需要在多少秒内响起。它工作得很好,但用户需要提供的输入必须是一个数字。当用户输入任何形式的文本时,程序就会崩溃。现在,如何防止用户输入文本、调用函数或在用户输入时执行其他操作,而不是让程序崩溃?
这是我现在的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Test
{
class Alarm
{
public static void play()
{
int sec;
sec = Convert.ToInt16(Console.ReadLine());
for (int i = 0; i < seconds; ++i)
{
System.Threading.Thread.Sleep(1000);
}
for (int i = 0; i < 10; i++)
{
Console.Beep();
}
}
}
}
【问题讨论】:
-
好吧,在我的脑海中,你可以在转换周围使用
trycatch并处理你喜欢的异常,例如要求他们重新输入一个值。 -
另外,
int是Int32而不是Int16。short是Int16的别名 -
@JustinPihony 我什至不知道这一点。我接受了过去所有对我有帮助的答案。谢谢你的提示。 :)