C numeric limits interface
From cppreference.com
                    
                                        
                    
                    
                                                            
                    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)  | 
|    default rounding mode of floating-point arithmetics   (macro constant)  | 
|
|    (C++11) 
 | 
   specifies in what precision all arithmetic operations are done   (macro constant)  |