Floating-point data types
The floating-point data types are approximate data types. The system rounds the significand if more precision is present than it can represent.
- Syntax
-
[ '+' | '-' ] <digit>… [ '.' [ <digit>… ] ] [( 'e' | 'E' ) [ '+' | '-' ] <digit>… ] [ '+' | '-' ] '.' <digit>… [ ( 'e' | 'E' ) [ '+' | '-' ] <digit>… ] [ '+' | '-' ] <digit>… [ ',' [ <digit>… ] ] [( 'e' | 'E' ) [ '+' | '-' ] <digit>… ] [ '+' | '-' ] ',' <digit>… [ ( 'e' | 'E' ) [ '+' | '-' ] <digit>… ]
- Description
-
- Optional leading sign
- Unlimited leading zeros
- At least one decimal digit
- Decimal point or comma, if needed
- Optional
e
orE
introducing an exponent that is followed by an optional sign and one or more digits
- Limitations
-
- No thousands-separator commas
- No support for loading exceptional values, meaning Not a Number (NaN) values and infinities
The syntax of floating-point values is the same as the syntax of fixed-point values augmented by an optional trailing exponent specification.
The optional decimal point can be followed by zero or more decimal digits if there is at least one decimal digit before the decimal point. The the optional decimal point can be followed by one or more decimal digits if there are no decimal digits before the decimal point.
If there is no explicit decimal point, the system assumes a decimal point immediately following the last decimal digit.
You can specify a comma as a separator by using it like the decimal point.
The optional power of 10 exponent is e
(lowercase or uppercase), with an
optional sign and a mandatory sequence of decimal digits.
Type | Real | Double |
---|---|---|
Representation | 4-byte IEEE floating point | 8-byte IEEE floating point |
Approx. largest normalized value | ±3.40e+38 | ±1.79e+308 |
Approx. smallest normalized value | ±1.18e-38 | ±3.40e-308 |
Approx. smallest denormalized value | ±7.01e-46 | ±2.50e-324 |
- Overflow
- The field exceeds the largest representable value (maximum exponent and maximum significand).
- Underflow
- The number is too small to approximate in the denormalized range.