gpt4 book ai didi

c++ - 如何指定小数点后有多少个数字?

转载 作者:太空宇宙 更新时间:2023-11-04 12:57:18 25 4
gpt4 key购买 nike

有什么方法可以确定小数点后的 double 中有多少个数字。例如 double a=3.14259

如果我现在创建一个新的 int b,我怎样才能使 b 的值等于 a 的小数点后的数字?

最佳答案

简短的回答是,你不能。

首先,像 double 这样的类型在(二进制)句点之后总是具有相同数量的二进制数字。那叫做尾数。如果是 double 是 53 位,意思是二进制周期后的 52 位,十进制大约是 15 位。有关详细信息,您可以查看 IEEE_754 (double precision)

当您将 double 转换为 decimal 字符串时,您通常不会匹配精确的 decimal。例如,值 0.1 不能用 double 值准确表示。应用舍入后,printf 可能会显示“0.1”。

但是,当您处理一些双重计算时,您会遇到小的偏差,例如 0.100000000000120.09999999999987。在这种情况下你会怎么做?

还有一个与 C++ double 无关的数学问题:

                     _
0.1 is equal to 0.09

所以你的答案要么是 1 要么是无穷大

关于c++ - 如何指定小数点后有多少个数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45967962/

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