##### cppreference.com

##### Search

Create account

##### Namespaces

- Page
- Discussion

##### Variants

##### Views

- View
- Edit
- History

##### Actions

# C numeric limits interface

From cppreference.com
< cpp‎ | types

See also std::numeric_limits interface.

Defined in header `<cstdint>`
PTRDIFF_MIN (C++11) | minimum value of object of std::ptrdiff_t type (macro constant)
PTRDIFF_MAX (C++11) | maximum value of object of std::ptrdiff_t type (macro constant)
SIZE_MAX (C++11) | maximum value of object of std::size_t type (macro constant)
SIG_ATOMIC_MIN (C++11) | minimum value of object of std::sig_atomic_t type (macro constant)
SIG_ATOMIC_MAX (C++11) | maximum value of object of std::sig_atomic_t type (macro constant)
WCHAR_MIN (C++11) | minimum value of object of wchar_t type (macro constant)
WCHAR_MAX (C++11) | maximum value of object of wchar_t type (macro constant)
WINT_MIN (C++11) | minimum value of object of std::wint_t type (macro constant)
WINT_MAX (C++11) | maximum value of object of std::wint_t type (macro constant)

### [edit] Limits of integer types

Defined in header `<climits>`
CHAR_BIT | number of bits in byte (macro constant)
MB_LEN_MAX | maximum number of bytes in a multibyte character (macro constant)
CHAR_MIN | minimum value of char (macro constant)
CHAR_MAX | maximum value of char (macro constant)
SCHAR_MIN SHRT_MIN INT_MIN LONG_MIN LLONG_MIN (C++11) | minimum value of signed char, short, int, long and long long respectively (macro constant)
SCHAR_MAX SHRT_MAX INT_MAX LONG_MAX LLONG_MAX (C++11) | maximum value of signed char, short, int, long and long long respectively (macro constant)
UCHAR_MAX USHRT_MAX UINT_MAX ULONG_MAX ULLONG_MAX (C++11) | maximum value of unsigned char, unsigned short, unsigned int, unsigned long and unsigned long long respectively (macro constant)

### [edit] Limits of floating point types

Defined in header `<cfloat>`
FLT_RADIX | the radix (integer base) used by the representation of all three floating-point types (macro constant)
DECIMAL_DIG (C++11) | number of decimal digits that can be converted to long double and back without losing precision (macro constant)
FLT_MIN DBL_MIN LDBL_MIN | minimum value of float, double and long double respectively (macro constant)
FLT_MAX DBL_MAX LDBL_MAX | maximum value of float, double and long double respectively (macro constant)
FLT_EPSILON DBL_EPSILON LDBL_EPSILON | difference between 1.0 and the next representable value for float, double and long double respectively (macro constant)
FLT_DIG DBL_DIG LDBL_DIG | number of decimal digits that can be represented without losing precision for float, double and long double respectively (see std::numeric_limits::digits10 for explanation) (macro constant)
FLT_MANT_DIG DBL_MANT_DIG LDBL_MANT_DIG | number of base `FLT_RADIX` digits that can be represented without losing precision for float, double and long double respectively (macro constant)
FLT_MIN_EXP DBL_MIN_EXP LDBL_MIN_EXP | minimum negative integer such that `FLT_RADIX` raised by power one less than that integer is a normalized float, double and long double respectively (macro constant)
FLT_MIN_10_EXP DBL_MIN_10_EXP LDBL_MIN_10_EXP | minimum negative integer such that 10 raised by power one less than that integer is a normalized float, double and long double respectively (macro constant)
FLT_MAX_EXP DBL_MAX_EXP LDBL_MAX_EXP | maximum positive integer such that `FLT_RADIX` raised by power one more than that integer is a normalized float, double and long double respectively (macro constant)
FLT_MAX_10_EXP DBL_MAX_10_EXP LDBL_MAX_10_EXP | maximum positive integer such that 10 raised by power one more than that integer is a normalized float, double and long double respectively (macro constant)
FLT_ROUNDS | default rounding mode of floating-point arithmetics (macro constant)
FLT_EVAL_METHOD (C++11) | specifies in what precision all arithmetic operations are done (macro constant)

### [edit] See also

- Fixed width integer types
- Arithmetic types
- C++ type system overview
- Type support (basic types, RTTI, type traits)

Retrieved from "http://en.cppreference.com/mwiki/index.php?title=cpp/types/climits&oldid=71129"