gpt4 book ai didi

iOS UInt64 数字 float 错误

转载 作者:行者123 更新时间:2023-11-29 01:09:13 25 4
gpt4 key购买 nike

UInt64 intValue = 999999900;
float tt = intValue;
NSLog(@"float tt = %f", tt);

输出结果是“float tt = 999999872”,你可以看到UInt64转换为float丢失了一些东西,最大float大于999999900,所以我认为值999999900可以转换为float,所以我的问题是为什么在 iOS 中丢失 28?

最佳答案

float 的精度有限。这不是数字的大小,而是有效数字的数量(在本例中为 9)。

使用double而不是float来获得更高的精度。

UInt64 intValue = 999999900;
double tt = intValue;
NSLog(@"double tt = %f", tt);

关于iOS UInt64 数字 float 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35966460/

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