728x90
float 에서 int 로 변환할때 기본적으로 소수점 뒷자리를 버림을 한다.
float f = 1.547f;
int i = (int)Math.Round(f);
(출력값)
1
하지만 반올림을 하고 싶을 경우 아래처럼 처리하면된다.
float f = 1.547f;
int i = (int)Math.Round(f,MidpointRounding.AwayFromZero);
(출력값)
2
아래처럼 해도 반올림이 된다.
float f = 1.547f;
int i = Convert.ToInt32(Math.Round(f));
(출력값)
2
728x90
'C# > Winform' 카테고리의 다른 글
[C#] BitmapImage(ImageSource) to Image (0) | 2022.02.18 |
---|---|
[C#] WinAPI 사용시 ini 파일에서 같은 키가 2개인 경우 어떤 값을 가져올까? (0) | 2022.02.17 |
[C#] .NET5, .NET6 성능차이 (0) | 2022.02.16 |
[C#] Snippets 적용 방법 (0) | 2021.12.16 |
[C#] 'ContextSwitchDeadlock' 오류 (0) | 2021.11.19 |