VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > c#编程 >
  • c#教程之算术溢出

算术溢出(相关C#教程)

算术运算符(+、-、*、/)产生的结果可能会超出涉及的数值类型可能值的范围。 详细信息应参考有关特定运算符的章节,而一般情况下:
整数算术溢出或者引发 OverflowException,或者丢弃结果的最高有效位。 整数被零除总是引发 DivideByZeroException
浮点算术溢出或被零除从不引发异常,因为浮点类型基于 IEEE 754,因此可以表示无穷和 NaN(不是数字)。
小数算术溢出总是引发 OverflowException。 小数被零除总是引发 DivideByZeroException。
当发生整数溢出时,产生的结果取决于执行上下文,该上下文可为 checked 或 unchecked。 在 checked 上下文中引发 OverflowException。 在未选中的上下文中,放弃结果的最高有效位并继续执行。 因此,C# 使您有机会选择处理或忽略溢出。
除算术运算符以外,整型之间的强制转换也会导致溢出(例如,将 long 强制转换为 int)并受 checked 或 unchecked 执行的限制。 然而,按位运算符和移位运算符永远不会导致溢出。

相关教程