2

.NET から Mono ランタイムにアプリを移植しています。コードのある時点で、float の値が158136.422. float についての私の理解では、それは 7 桁の精度であるということでした。予想どおり、Mono はそれを 7 桁にトリミングします。

C#の場合

float f = 158136.422f;

158136.4 に丸められます。

4

1 に答える 1

10

このコードを書くとき:

float f = 158136.422f;

に割り当てられる正確なf値は です158136.421875

文字列表現で出力される桁数は別の問題です。

私が使用する場合:

float f = 158136.422f;
Console.WriteLine(f);
Console.WriteLine(f.ToString("r"));

次の結果が得られます。

158136.4
158136.422

Mono と .NET の両方で。

于 2013-08-21T15:16:27.003 に答える