The REAL function has four forms, each of which returns a real value. The following form of the REAL function returns the value of the arithmetic expression rounded to a single-precision, real value:
── REAL ── ( ──<arithmetic expression>── ) ────────────────────────────┤
The following form of the REAL function returns the value of the Boolean expression as a real value. All bits of the Boolean expression are used.
── REAL ── ( ──<Boolean expression>── ) ───────────────────────────────┤
The following form of the REAL function returns, as a real value, the real part of the specified complex expression:
── REAL ── ( ──<complex expression>── ) ───────────────────────────────┤
For a function that returns the imaginary part of a complex expression, see IMAG Function.
The following form of the REAL function returns, as a real value, the string of <arithmetic expression> characters starting with the character indicated by the pointer expression:
── REAL ── ( ──<pointer expression>── , ──<arithmetic expression>── ) ─┤
If the arithmetic expression indicates a string of characters that is less than or equal to 48 bits, this string is right-justified in one word with leading zeros, if necessary, and this one word is returned as the function result. If the arithmetic expression indicates a string of characters that is greater than 48 bits but less than or equal to 96 bits, this string is right-justified in a two-word operand with leading zeros, if necessary, and this two-word operand is returned as the function result. Then only the first word is returned as the function result. However, if the arithmetic expression indicates a string of characters that is greater than 96 bits, a run-time error occurs.

