请考虑以下代码:
0.1 + 0.2 == 0.3 -> false
Run Code Online (Sandbox Code Playgroud)
0.1 + 0.2 -> 0.30000000000000004
Run Code Online (Sandbox Code Playgroud)
为什么会出现这些不准确之处?
我有这个代码:
static void Main()
{
float i;
for (i = 0; i <= 100; i = i + 0.01F)
{
Console.WriteLine(i);
}
}
Run Code Online (Sandbox Code Playgroud)
它打印我这个:
0
0.01
0.02
0.03
0.04
0.05
0.05999999
0.06999999
0.07999999
0.08999999
0.09999999
0.11
Run Code Online (Sandbox Code Playgroud)
这是一个错误还是我做错了什么?这有什么解决方案吗?