【问题标题】:.NET Micro Framework parse double.NET Micro Framework 解析双精度
【发布时间】:2013-03-13 23:58:14
【问题描述】:

我一直试图弄清楚如何以与普通 .NET 框架相同的精度解析 .NET Micro Framework (.NETMF) 中的 double。

当我在经典的 .NET 框架中执行此操作时:

Debug.Print(Double.Parse("4213238").ToString());

我得到了预期的输出,4213238。

但是当我在 .NETMF 中做同样的事情时,我得到了不精确的输出 4213238.0000000009。在两个 .NET 框架实现中,double 的大小都是 8 个字节。我需要做什么才能使 .NETMF Double.Parse 以与普通 .NET 框架 Double.Parse 相同的方式工作?

有没有比为此编写解析器方法更好的方法?

【问题讨论】:

    标签: .net .net-micro-framework


    【解决方案1】:

    我得到不精确的输出 4213238.0000000009

    不,这是准确的。 Double 可以存储 15 位有效数字。数一数,你都得到了。其余的只是随机噪声数字,其值受浮点硬件实现的影响。您的 MF 目标具有不同的硬件。如果不选择另一种类型,就没有可用的魔法来获得更多,只是显示更少的数字没有魔法。 Int 或 long 当然是一个很好的选择,它们非常精确。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-07-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-10
      • 2016-03-03
      相关资源
      最近更新 更多