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

来源:百度知道 编辑:UC知道 时间:2024/05/29 13:25:58
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)
。。。

double 类型的问题 double的0 其实不是INT形式的0

double的原因,你换成int就会出错了

不会的,result的值会是无穷大,程序提醒不是数字