क्यों .NET 5.0 और C # में फ्रेमवर्क समान मान नहीं लौटाता [डुप्लिकेट]
Dec 28 2020
मेरे पास दो मूल्य हैं जैसे नीचे,
V1 = 44194.291666666664
और v2 = 44193
।
नीचे ऑपरेशन .NETCore और .Framework में अलग-अलग मान देता है
उत्पाद परिणाम | अंकगणितीय ऑपरेशन : (v1 - v2) | ToString () (v1 - v2) .TString () |
---|---|---|
.NET5.0 परिणाम | 1.2916666666642413 | "1.2916666666642413" |
.NETFramework परिणाम | 1.2916666666642414 | "1.29166666666424" |
सांकेतिक टुकड़ा
double v1 = 44194.291666666664;
double v2 = 44193;
double value = v1 - v2;
string output = (v1 - v2).ToString();
जवाब
1 JonathanG. Jan 07 2021 at 22:02
यह (संभावना) .NET कोर 3.0 के रूप में डिजाइन द्वारा है। परिवर्तन पर इस ब्लॉग पोस्ट देखें:https://devblogs.microsoft.com/dotnet/floating-point-parsing-and-formatting-improvements-in-net-core-3-0/