实数舍入

时间:2019-06-10 05:31:51

标签: c# .net

我目前正在使用各种资源来学习C#,其中一本名为“简而言之C#”的书。

该书的第37页:

实数舍入错误

floatdouble内部表示以2为底的数字。因此,仅 精确表示以2为底的数字。实际上,这意味着 具有分数部分的大多数文字(以10为底)将无法精确表示。例如:

float tenth = 0.1f; // Not quite 0.1
float one = 1f;
Console.WriteLine (one - tenth * 10f); // -1.490116E-08

但是,我无法复制它。在我的情况下,Console.WriteLine的输出正好是0。我有点困惑..难道书中给出的示例不是要被复制并仅出于解释的目的吗?还是其他?

我将Visual Studio 2017与Microsoft .NET Framework 4.7一起使用。

更新: Screenshot

我在控制台应用程序以及C#交互式窗口中尝试过。在这两种情况下,答案均为0。

0 个答案:

没有答案