Avoid Integer Overflow

Avoid Integer Overflow

When working with integer expressions there is often the risk of raising the “Overflow” error. More specifically, there can be two occasions when this frequently occurs:

  • When you multiply or add Integer values and the result exceeds 32,767.
  • When you create generic string routines that iterate on each character of the string, and you pass these routines a string that is longer than 32K characters.
32-bit versions of Visual Basic work with Long values at the same speed as with Integer variables, so there is no reason for not using Long values in integer calculations. There are two ways to force VB to use Longs instead of Integers inside math expressions: using a Long constant, or using the CLng() function to explicitly convert one of the operands to Long:
' first method Print x * 100&' second method Print x * CLng(y)


Share the Post: