Navigation: Language Reference > 3 - Variable Declarations > Data Types >====== SREAL (four-byte signed floating point) ====== | |
label SREAL([initial value]) [,DIM( )] [,OVER( )] [,NAME( )] [,EXTERNAL] [,DLL] [,STATIC] | |
[,THREAD] [,AUTO] [,PRIVATE] [,PROTECTED] |
SREAL | A four-byte floating point number. |
Format: ± exponent significand
| | …….. | ………………….. |
Bits: 31 30 23 0
Range: 0, ± 1.175494e-38 .. ± 3.402823e+38 (6 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. |
SREAL declares a four-byte floating point signed numeric variable, using the Intel 8087 short real (single precision) format.
Example:
Count1 SREAL !Declare four-byte signed floating point
Count2 SREAL,OVER(Count1) !Declare OVER the four-byte
!signed floating point
Count3 SREAL,DIM(4) !Declare it an array of 4 floats
Count4 SREAL(5) !Declare with initial value
Count5 SREAL,EXTERNAL !Declare as external
Count6 SREAL,EXTERNAL,DLL !Declare as external in a .DLL
Count7 SREAL,NAME('SixCount') !Declare with external name
ExampleFile FILE,DRIVER('Btrieve') !Declare a file
Record RECORD
Count8 SREAL,NAME('Counter') !Declare with external name
END
END