C#中,关于除数为0的问题

try
{
double a = 10;
double b = 0;
double result = a / b;
}
catch
{
MessageBox.Show("除数不能为零")
}

上面这段代码除数为0,但是为什么执行的时候不会跳到异常中呢?

double中包括了一个非数字的结果,就是无穷大这个字符串。因为double在C#中进行了封装,不是基本数据类型那么简单,而是一个类
如果想跳转,只能判断结果是不是double.PositiveInfinity(正无穷的常量)
double x = 3;
double y = 0;
if (x / y == double.PositiveInfinity)
。。。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-03-07
double 类型的问题 double的0 其实不是INT形式的0
第2个回答  2008-03-06
double的原因,你换成int就会出错了
第3个回答  2008-03-06
不会的,result的值会是无穷大,程序提醒不是数字
相似回答