Ada*_*rny 2 c# floating-point exception
我希望我的程序在某个浮点变量达到无穷大时抛出异常,或者是Nan NotFiniteNumberException,它看起来像是一个解决方案,但是存在问题.这个
try
{
Single x = 5;
x = x / 0;
x = x + 1;
}
catch (NotFiniteNumberException ex)
{
//bla bla bla
}
Run Code Online (Sandbox Code Playgroud)
不会抛出任何东西.
我知道IsNan和IsInfinity方法,但这不是我想要的.
那是因为你的师不会抛出一个NotFiniteNumberException.它只会返回无穷大x.
NotFiniteNumberException可用于不支持浮点运算中的无穷大和非数字概念的编程语言.
C#不支持无限大和浮点运算不是非数字,所以这个例外在这里不适用.您需要x在执行除法后手动检查值.