C #의 .NET 5.0 및 Framework가 동일한 값을 반환하지 않는 이유 [중복]
Dec 28 2020
다음과 같은 두 가지 값이 있습니다.
V1 = 44194.291666666664
및 v2 = 44193
.
아래 작업은 .NETCore 및 .Framework에서 다른 값을 반환합니다.
제품 결과 | 산술 연산 : (v1-v2) | ToString () (v1-v2) .ToString () |
---|---|---|
.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 Core 3.0 기준으로 설계된 것입니다. 변경 사항에 대해서는 다음 블로그 게시물을 참조하십시오.https://devblogs.microsoft.com/dotnet/floating-point-parsing-and-formatting-improvements-in-net-core-3-0/