gpt4 book ai didi

c++ - double 的有效小数位数?

转载 作者:IT老高 更新时间:2023-10-28 23:18:03 37 4
gpt4 key购买 nike

C/C++ 标准对 double 的最小有效十进制数字有什么保证? ?

C++ 标准实际上在 § 18.3.2.4/10 的脚注中说这相当于 DBL_DIG如 C 标准中定义的那样。但是我在 C 标准中找不到任何关于最小值的信息。

那么,以下其中一项的最小值是多少?

  • std::numeric_limits<double>::digits10
  • DBL_MANT_DIG编辑:不,DBL_DIG

最佳答案

你不会在 C++ 标准中找到它,因为 C++ 在这个标准上遵循 C 标准。对于十进制数字,最小值为:

FLT_DIG   6
DBL_DIG 10
LDBL_DIG 10

因此,float 为 6 位,doublelong double 为 10。 (这是保证从 text 到 type 并返回的转换将产生相同值的位数。)

请注意,DBL_MANT_DIG 对应于基数中的位数,因此通常是二进制位数,而不是十进制位数。

关于c++ - double 的有效小数位数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14225786/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com