Spec-Zone.ru › C++

std::numeric_limits<T>::digits

static const int digits;
(до C++11)
static constexpr int digits;
(с C++11)

Значение std::numeric_limits<T>::digits — это количество цифр в системе счисления с основанием radix, которые могут быть представлены типом T без изменения. Для целочисленных типов это количество битов, не считая знакового бита и битов заполнения (если таковые имеются). Для типов с плавающей точкой это количество цифр мантиссы (для реализаций IEC 559/IEEE 754, это количество цифр, хранимых для мантиссы плюс один, так как мантисса имеет неявную ведущую 1 и двоичную точку).

Стандартные специализации

T значение std::numeric_limits<T>::digits
(при условии отсутствия битов заполнения)
/* неспециализированный */ ​0​
bool 1
char CHAR_BIT - std::numeric_limits<char>::is_signed
signed char CHAR_BIT - 1
unsigned char CHAR_BIT
wchar_t CHAR_BIT * sizeof(wchar_t)

- std::numeric_limits<wchar_t>::is_signed

char8_t (с C++20) CHAR_BIT
char16_t (с C++11) CHAR_BIT * sizeof(char16_t)
char32_t (с C++11) CHAR_BIT * sizeof(char32_t)
short CHAR_BIT * sizeof(short) - 1
unsigned short CHAR_BIT * sizeof(short)
int CHAR_BIT * sizeof(int) - 1
unsigned int CHAR_BIT * sizeof(int)
long CHAR_BIT * sizeof(long) - 1
unsigned long CHAR_BIT * sizeof(long)
long long (с C++11) CHAR_BIT * sizeof(long long) - 1
unsigned long long (с C++11) CHAR_BIT * sizeof(long long)
float FLT_MANT_DIG
double DBL_MANT_DIG
long double LDBL_MANT_DIG

См. также

radix
[статическое]
основание системы счисления или целое основание, используемое для представления данного типа
(публичная статическая константа-член)
min_exponent
[статическое]
на единицу больше наименьшего отрицательного показателя степени основания, представляющего собой допустимое нормализованное значение с плавающей точкой
(публичная статическая константа-член)
max_exponent
[статическое]
на единицу больше наибольшего целого показателя степени основания, представляющего собой допустимое конечное значение с плавающей точкой
(публичная статическая константа-член)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/types/numeric_limits/digits

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API