我的一个程序在计算过程中遇到一个奇怪的溢出问题,即32767+1时溢出,而用c++或delphi计算时则没问题。这是vb的一个bug,还是其他什么原因?

解决方案 »

  1.   

    vb中的integer型是有符号型,范围从-32768到32767,当你把一个integer型32767+1的时候当然会溢出了。你应该使用长整型。32767& + 1这样就不会溢出了。
      

  2.   

    不要 As integer, As Long试试看。
      

  3.   

    你应该使用长整型。32767& + 1或32767 + 1& 这样就不会溢出了。
      

  4.   

    长整型和double型我都试过
    你们不信,你们试试
      

  5.   

    在立即窗口:
    ? 32767& + 1   回车输出:
    32768