%INTEGER
Convert an expression to an integer value
WSupported on Windows
|
USupported on Unix
|
VSupported on OpenVMS
|
NSupported in Synergy .NET
|
integer = %INTEGER(expression[, magnitude])
Return value
integer
The integer value of expression. (i)
Arguments
expression
The expression to convert to an integer value. (a or n)
magnitude
(optional) The size of the result. (n)
Discussion
%INTEGER converts an expression to an integer value.
Expression is converted according to the rules for moving data to an integer destination. (See Assignment statements for a description of these rules.) If the converted expression is too long to fit into the requested integer size, the high-order bits that don’t fit are ignored. If magnitude is not specified or contains a value other than 1, 2, 4, or 8, the resulting string is four bytes long.
Examples
This example uses alpha input as data for an integer arithmetic computation. If the alpha variable contains any nonnumeric data other than a blank, a decimal point, or a sign (+ or –), a “Bad digit encountered” error ($ERR_DIGIT) is generated.
subroutine math a_avar ,a record val1 ,i2 val2 ,i2 result ,i4 proc result = (val1*val2)/%integer(a_avar) . . . return endsubroutine