gpt4 book ai didi

c++ - float 在范围内还是超出范围?

转载 作者:太空狗 更新时间:2023-10-29 20:00:18 24 4
gpt4 key购买 nike

下面这两个例子都有 8 个有效数字,但是第一个没有给出任何警告,而第二个有,为什么?

float f1 = 11111111;
float f2 = 99999999;

float 数据类型有 7 位还是 8 位有效数字?

最佳答案

查看 this article : IEEE754 32 位 float 有一个 24 位尾数(提示省略前导 1)。现在 224 是 16'777'216。这意味着您的第一个数字 11'111'111 非常适合,但第二个不适合。

不幸的是,二进制与十进制不同,因此在讨论精度时,大多数时候我们实际上是在谈论二进制 数字,而 float 有 24 个有效位。 (我忘记了“二进制数字”的简写。)转换为 log210,大约是 3.32,所以你得到“7.22 个十进制数字”。

关于c++ - float 在范围内还是超出范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7706817/

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