注册 登录
编程论坛 VB.NET论坛

请教VB.NET数据溢出异常

sunplus 发布于 2009-11-30 09:48, 857 次点击

大家好:
     小弟,刚开始用,现遇到一个问题,望大家帮帮忙!

       以下为小程序内容:
         
        行号0:Dim ucA As Byte = 0, ucB As Byte = 0
        行号1:ucA = 250
        行号2:ucB = 230
        行号3:ucA = ucA + ucB

       当程序欲行到行号3时,提示“未处理的OverflowException”,即数据溢出异常,再单步执行时,整个程序自动退出。
      
       在C语言里,如果同类型数据运算后结果超过存贮变量范围时,系统会自动按变量范围取值,
       比如上面的:行号3:ucA = ucA + ucB后,ucA将=(250+230)-256=224.

       现在的问题
      1:我程序里将有大量这种数据溢出的操作,如何实现像C语言里面那样,自动取范围内的值。
       2:是否里有相关设置?

       非常感谢!
1 回复
#2
不说也罢2009-12-02 20:40
       Dim ucA As Byte = 0, ucB As Byte = 0
        ucA = 250
        ucB = 230
        Try
            ucA = ucA + ucB'这里大于255肯定会出错的哦
        Catch
            ucA = (CInt(ucA) + CInt(ucB)) Mod 256   'OK了
        End Try
1