std::numeric_limits::digits10

来自cppreference.com

 
 
 
类型的支持
基本类型
基础类型
定宽整数类型 (C++11)
数值极限
C 数值极限接口
运行时类型信息
类型特性
类型类别
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
(C++11)
类型属性
(C++11)
(C++11)
(C++11)
(C++14)
(C++11)
(C++11)(C++17中过时)
(C++11)
类型特性常量
元函数
(C++17)
受支持操作
关系与属性查询
(C++11)
(C++11)
(C++11)
(C++11)
类型修改
(C++11)
(C++11)
(C++11)
类型变换
(C++11)
(C++11)
(C++17)
(C++11)(C++17中过时)
(C++17)
 
std::numeric_limits
 
static const int digits10
(C++11 前)
static constexpr int digits10
(C++11 起)
std::numeric_limits<T>::digits10的值的数目10为底的位数,可以不改变,即,所表示的类型T任​​何的第二个版本订单存储器访问这么多的小数位数的号码可以转换成一个值类型T为小数形式,没有变化,由于四舍五入或溢出。基radix类型,它的价值是digitsdigits-1浮点类型)乘以log
10
(radix)
和向下调整.
原文:
The value of std::numeric_limits<T>::digits10 is the number of base-10 digits that can be represented by the type T without change, that is, any number with this many decimal digits can be converted to a value of type T and back to decimal form, without change due to rounding or overflow. For base-radix types, it is the value of digits (digits-1 for floating-point types) multiplied by log
10
(radix)
and rounded down.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 标准的专业

T
值的std::numeric_limits<T>::digits10
原文:
value of std::numeric_limits<T>::digits10
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
/* non-specialized */ 0
bool 0
char std::numeric_limits<char>::digits * std::log10(2)
signed char std::numeric_limits<signed char>::digits * std::log10(2)
unsigned char std::numeric_limits<unsigned char>::digits * std::log10(2)
wchar_t std::numeric_limits<wchar_t>::digits * std::log10(2)
char16_t std::numeric_limits<char16_t>::digits * std::log10(2)
char32_t std::numeric_limits<char32_t>::digits * std::log10(2)
short std::numeric_limits<short>::digits * std::log10(2)
unsigned short std::numeric_limits<signed short>::digits * std::log10(2)
int std::numeric_limits<int>::digits * std::log10(2)
unsigned int std::numeric_limits<signed int>::digits * std::log10(2)
long std::numeric_limits<long>::digits * std::log10(2)
unsigned long std::numeric_limits<unsigned long>::digits * std::log10(2)
long long std::numeric_limits<long long>::digits * std::log10(2)
unsigned long long std::numeric_limits<unsigned long long>::digits * std::log10(2)
float FLT_DIG
double DBL_DIG
long double LDBL_DIG

[编辑] 示例

一个8位二进制类型可以代表任何二位十进制数完全相同,但3位十进制数256。digits10为一个8位的值是999不能派代表出席了会议。 (8 * std::log10(2)为2.41)
原文:
An 8-bit binary type can represent any two-digit decimal number exactly, but 3-digit decimal numbers 256..999 cannot be represented. The value of digits10 for an 8-bit type is 2 (8 * std::log10(2) is 2.41)
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
标准的32位IEEE 754浮点类型都有一个24位的小数部分(23位写,一个隐含的),这可能表明,它可以代表7位数字的小数(24 * std::log10(2)是7.22)。 ,但相对舍入误差不统一,一些浮点值与7位小数尾数也没有生存转化为32位的持股量和回:的最小的正面例子是8.589973e9,变成8.589974e9后的往返。这些舍入误差可以不超过digits10,这是6.92 1位表示,(24-1)*std::log10(2)计算。向下取整结果值6.
原文:
The standard 32-bit IEEE 754 floating-point type has a 24 bit fractional part (23 bits written, one implied), which may suggest that it can represent 7 digit decimals (24 * std::log10(2) is 7.22), but relative rounding errors are non-uniform and some floating-point values with 7 decimal digits do not survive conversion to 32-bit float and back: the smallest positive example is 8.589973e9, which becomes 8.589974e9 after the roundtrip. These rounding errors cannot exceed one bit in the representation, and digits10 is calculated as (24-1)*std::log10(2), which is 6.92. Rounding down results in the value 6.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 另请参阅

[静态]
基数或用来表示给定类型的整数基地
原文:
the radix or integer base used by the representation of the given type
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公开静态成员常量) [编辑]
[静态]
radix数量的数字,可以表示没有变化
原文:
number of radix digits that can be represented without change
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公开静态成员常量) [编辑]
一个比最小的负电源是一个有效的标准浮点值的基数
原文:
one more than the smallest negative power of the radix that is a valid normalized floating-point value
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公开静态成员常量) [编辑]
一个比最大的整数次幂的基数是一个有效的有限浮点值
原文:
one more than the largest integer power of the radix that is a valid finite floating-point value
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(公开静态成员常量) [编辑]