请问0/0在vb当中会怎么报错是报出除数为零还是溢出呢我尝试了很多次0/0是溢出x/0是除数为零,x代表不为零的
请问0/0在vb当中会怎么报错
是报出除数为零
还是溢出呢
我尝试了很多次
0/0是溢出
x/0是除数为零,x代表不为零的数字
求解释
[解决办法]
实时错误“6”,溢出
[解决办法]
楼主,这是计算机的一个典型出错,报 溢出
[解决办法]
溢出~~~
[解决办法]
这个问题,在什么情况下有意义?也许VB开发人员,给这两个做错误处理是都没有注意。。。。
所以楼主可以不必介怀它们的区别。。。
[解决办法]
因为这就是 CPU 中 FPU(浮点运算单元)的运算结果。
FPU 的状态寄存器有下面两个标志位与本问题有关:
OE 现有精度无法表示,数字太大溢出
ZE 除0错
1)计算 x/0,其中 x<>0
FPU 设置状态标志 ZE=1。
VB 错误为 #11 Division by zero。
2)计算 0/0
FPU 设置状态标志 OE=1,ZE=0。
VB 错误为 #6 Overflow。
原因:
在数学上,x/0 是有意义的,表示无穷大;而 0/0 是无意义的。
这在 .Net 中表现得很直观
- VB.NET code
Dim d1 As Double = 1/0 '值为 Double.PositiveInfinity 正无穷Dim d2 As Double = 0/0 '值为 Double.NaN 不是数字
