我面临着奇怪的问题。我知道 double 和 float 根本不同。但是对于像 11.9 这样的价值,它也在发生变化。我通过在任何地方更改类型来绕过问题,但我只想知道它被更改的原因。
这是片段代码
float sf = float.Parse ("11.9");
double sdo = double.Parse ("11.9");
double sd2 = (double)sf;
Console.WriteLine (sdo); // 11.9
Console.WriteLine (sd2); // 11.8999999999
如果需要任何进一步的信息,请告诉我。