Navigation: Language Reference > 3 - Variable Declarations > Data Types >====== REAL (eight-byte signed floating point) ====== | |
label REAL([initial value]) [,DIM( )] [,OVER( )] [,NAME( )] [,EXTERNAL] [,DLL] [,STATIC] [,THREAD] | |
[,AUTO] [,PRIVATE] [,PROTECTED] |
REAL | An eight-byte floating point number. |
Format: ± exponent significand
| . | ……….. | ………………… |
Bits:63 62 52 0
Range: 0, ± 2.225073858507201e-308 .. ± 1.79769313496231e+308
(15 significant digits)
initial value | A numeric constant. If omitted, the initial value is zero, unless the AUTO attribute is present. |
DIM | Dimension the variable as an array. |
OVER | Share a memory location with another variable. |
NAME | Specify an alternate, “external” name for the field. |
EXTERNAL | Specify the variable is defined, and its memory is allocated, in an external library. Not valid within FILE, QUEUE, or GROUP declarations. |
DLL | Specify the variable is defined in a .DLL. This is required in addition to the EXTERNAL attribute. |
STATIC | Specify the variable's memory is permanently allocated. |
THREAD | Specify memory for the variable is allocated once for each execution thread. Also implicitly adds the STATIC attribute on Procedure Local data. |
AUTO | Specify the variable has no initial value. |
PRIVATE | Specify the variable is not visible outside the module containing the CLASS methods. Valid only in a CLASS. |
PROTECTED | Specify the variable is not visible outside base CLASS and derived CLASS methods. Valid only in a CLASS. |
REAL declares an eight-byte floating point signed numeric variable, using the Intel 8087 long real (double precision) format.
Example:
Count1 REAL !Declare eight-byte signed floating point
Count2 REAL,OVER(Count1) !Declare OVER the eight-byte
!signed floating point
Count3 REAL,DIM(4) !Declare it an array of 4 reals
Count4 REAL(5) !Declare with initial value
Count5 REAL,EXTERNAL !Declare as external
Count6 REAL,EXTERNAL,DLL !Declare as external in a .DLL
Count7 REAL,NAME('SixCount') !Declare with external name
ExampleFile FILE,DRIVER('Clarion') !Declare a file
Record RECORD
Count8 REAL,NAME('Counter') !Declare with external name
END
END