std::numeric_limits::is_iec559

static const bool is_iec559; (until C++11) static constexpr bool is_iec559; (since C++11) The value of std::numeric_limits<T>::is_iec559 is true for all floating-point types T which fulfill the requirements of IEC 559 (IEEE 754) standard. If std::numeric_limits<T>::is_iec559 is true, then std::numeric_limits<T>::has_infinity, std::numeric_limits<T>::has_quiet_NaN, and std::numeric_limits<T>::has_signaling_NaN are also true. Standard specializations

std::numeric_limits::is_bounded

static const bool is_bounded; (until C++11) static constexpr bool is_bounded; (since C++11) The value of std::numeric_limits<T>::is_bounded is true for all arithmetic types T that represent a finite set of values. While all fundamental types are bounded, this constant would be false in a specialization of std::numeric_limits for a library-provided arbitrary precision arithmetic type. Standard specializations T value of std::numeric_limits<T>::is_bounded /* non-

std::numeric_limits::has_infinity

static const bool has_infinity; (until C++11) static constexpr bool has_infinity; (since C++11) The value of std::numeric_limits<T>::has_infinity is true for all types T capable of representing the positive infinity as a distinct special value. This constant is meaningful for all floating-point types and is guaranteed to be true if std::numeric_limits<T>::is_iec559 == true. Standard specializations T value of std::numeric_limits<T>::has_infinity /* non-sp

std::numeric_limits::infinity

static T infinity(); (until C++11) static constexpr T infinity(); (since C++11) Returns the special value "positive infinity", as represented by the floating-point type T. Only meaningful if std::numeric_limits<T>::has_infinity == true. In IEEE 754, the most common binary representation of floating-point numbers, the positive infinity is the value with all bits of the exponent set and all bits of the fraction cleared. Return value T std::numeric_limits<T>::infini

std::numeric_limits::has_signaling_NaN

static const bool has_signaling_NaN; (until C++11) static constexpr bool has_signaling_NaN; (since C++11) The value of std::numeric_limits<T>::has_signaling_NaN is true for all types T capable of representing the special value "Signaling Not-A-Number". This constant is meaningful for all floating-point types and is guaranteed to be true if std::numeric_limits<T>::is_iec559 == true. Standard specializations T value of std::numeric_limits<T>::has_signaling_Na

std::numeric_limits::has_quiet_NaN

static const bool has_quiet_NaN; (until C++11) static constexpr bool has_quiet_NaN; (since C++11) The value of std::numeric_limits<T>::has_quiet_NaN is true for all types T capable of representing the special value "Quiet Not-A-Number". This constant is meaningful for all floating-point types and is guaranteed to be true if std::numeric_limits<T>::is_iec559 == true. Standard specializations T value of std::numeric_limits<T>::has_quiet_NaN /* non-specializ

std::numeric_limits::has_denorm_loss

static const bool has_denorm_loss; (until C++11) static constexpr bool has_denorm_loss; (since C++11) The value of std::numeric_limits<T>::has_denorm_loss is true for all floating-point types T that detect loss of precision when creating a subnormal number as denormalization loss rather than as inexact result (see below). Standard specializations T value of std::numeric_limits<T>::has_denorm_loss /* non-specialized */ false bool false char false sig

std::numeric_limits::epsilon

static T epsilon(); (until C++11) static constexpr T epsilon(); (since C++11) Returns the machine epsilon, that is, the difference between 1.0 and the next value representable by the floating-point type T. It is only meaningful if std::numeric_limits<T>::is_integer == false. Return value T std::numeric_limits<T>::epsilon() /* non-specialized */ T(); bool false char ​0​ signed char ​0​ unsigned char ​0​ wchar_t ​0​ char16_t ​0​ char32

std::numeric_limits::has_denorm

static const std::float_denorm_style has_denorm (until C++11) static constexpr std::float_denorm_style has_denorm (since C++11) The value of std::numeric_limits<T>::has_denorm identifies the floating-point types that support subnormal values. Standard specializations T value of std::numeric_limits<T>::has_denorm /* non-specialized */ std::denorm_absent bool std::denorm_absent char std::denorm_absent signed char std::denorm_absent unsigned char

std::numeric_limits::digits

static const int digits; (until C++11) static constexpr int digits; (since C++11) The value of std::numeric_limits<T>::digits is the number of digits in base-radix that can be represented by the type T without change. For integer types, this is the number of bits not counting the sign bit. For floating-point types, this is the number of digits in the mantissa. Standard specializations T value of std::numeric_limits<T>::digits /* non-specialized */ ​0​ bool