Skip to main content

Expression Evaluation

Description


ARMbasic can evaluate an expression as either an integer, string or floating point. The type of evaluation that is performed is determined by the first variable, constant or function in a statement when scanning from left to right. It is simple scan of left to right and () are ignored for determining the type of evaluation that will occur.

Example

 

DIM SINGLEtype as SINGLE
SINGLEtype = 1/2 ' results in 0.500000
INTEGERtype = 1/2 ' results in 0
functionCall ( 0.123 + INTEGERtype) ' passes a SINGLE type to
functionCall
functionCall ( 123 + SINGLEtype ) '
passes an INTEGER to functionCall
if 1 = SINGLEtype*2 then print
"true" ' will not print true, as the
expression is evaluated as integers
if 1.0 = SINGLEtype*2 then print
"true" ' will print true as 1.0 is a floating point constant and the
expression is evaluated as float