【发布时间】:2013-12-01 17:15:58
【问题描述】:
考虑这个程序
float a = 0.7f;
if (a < 0.7)
{
Console.WriteLine("Less");
}
输出为Less。为什么??
【问题讨论】:
-
解释很长。您应该阅读: 基本解释:stackoverflow.com/questions/618535/… 完整解释:docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html
-
可能是因为二进制浮点表示不能准确表示像0.7这样的十进制数
-
不知道为什么投反对票。不会认为这是一个坏问题。只是重复...
标签: c#