Standard C++ Library User Guide and Tutorial
representation.
All fundamental types are bounded. However, an implementation might choose to include, for
example, an infinite precision integer package that would not be bounded.
A type is modulo if the value resulting from the addition of two values can wrap around, that is,
be smaller than either argument. The fundamental unsigned integer types are all modulo.
Members Specific to Floating Point Values
The following members are either specific to floating point values, or have a meaning slightly
different for floating point values than the one described earlier for non-floating data types.
Type Name Meaning
T min() the minimum positive normalized value
int digits the number of digits in the mantissa
int radix the base (or radix) of the exponent representation
T epsilon() the difference between 1 and the least representable value
greater than 1
T round_error() a measurement of the rounding error
int min_exponent minimum negative exponent
int min_exponent10 minimum value such that 10 raised to that power is in range
int max_exponent maximum positive exponent
int max_exponent10 maximum value such that 10 raised to that power is in range
bool has_infinity true if the type has a representation of positive infinity
T infinity() representation of infinity, if available
bool has_quiet_NaN true if there is a representation of a quiet ``Not a Number"
T quiet_NaN() representation of quiet NaN, if available
bool has_signaling_NaN true if there is a representation for a signaling NaN
T signaling_NaN() representation of signaling NaN, if available
bool has_denorm true if the representation allows denormalized values
T denorm_min() Minimum positive denormalized value
bool is_iec559 true if representation adheres to IEC 559 standard.
bool tinyness_before true if tinyness is detected before rounding