gpt4 book ai didi

c# - 在 C# 中将 double 转换为 float 给出错误的值

转载 作者:行者123 更新时间:2023-11-30 19:05:50 25 4
gpt4 key购买 nike

问题很简单。我有一个 double ,我想将其转换为 float 。

double doubleValue = 0.00000000000000011102230246251565;
float floatValue = (float)doubleValue;

现在当我这样做的时候。浮点值变得疯狂。它的值为“1.110223E-16” 我是否需要为此流程做一些额外的事情。值应该是 0 或 0.1 但它不在这里。这里有什么问题?

最佳答案

double转换为float肯定会失准。但是值 1.110223E-16 是指数表示法,即提高到 -16 的幂,这意味着它类似于 0.0000000000000001110223

你应该使用 Math.Round()对数字进行四舍五入。

关于c# - 在 C# 中将 double 转换为 float 给出错误的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17336707/

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