在用vb6进行运算时报溢出,请各位高手指点,表达式如下
3334096740 and 65536
也尝试过数据类型转换,但是都不行。

解决方案 »

  1.   

    Long型最大2147483647,超范围了~
      

  2.   

    可转换为负值,或用16进制表示
    3334096740=&HC6BA4764
      

  3.   

    什么类型变量保存的呀?要想运算,不应该得出这种值!
    VB中有一种Decimal数据类型,可保存高达7*10^28的大数,但不能用于运算,只可用Variant类型赋值。
    所以,若你用变量是String或Variant类型,都可用此法转换成long型:Variant变量
    Dim i as Variant,l as Long
    i=3334096740#
    l=i-2^32String变量
    Dim s as String,l as Long
    s="3334096740"
    l=s-2^32记住,这种转换也限于long型范围内最大不能超过4G(2^32)