Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C#의 Decimal.ToSByte() 메서드 – 8비트 부호 있는 정수 변환 방법

C#에서 Decimal.ToSByte() 메서드는 지정된 Decimal 값을 그에 해당하는 8비트 부호 있는 정수(sbyte)로 변환하는 데 사용됩니다.

구문

기본 구문은 다음과 같습니다.

public static sbyte ToSByte (decimal val);

여기서 val은 sbyte 값으로 변환할 decimal 숫자를 의미합니다.

예제 1

다음은 Decimal.ToSByte() 메서드를 구현한 첫 번째 예제입니다.

using System;
public class Demo {
   public static void Main(){
      Decimal val = 97.567m;
      Console.WriteLine("Decimal 값 = "+val);
      sbyte res = Decimal.ToSByte(val);
      Console.WriteLine("SByte 값 = "+res);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 출력이 생성됩니다.

Decimal 값 = 97.567
SByte 값 = 97

출력 결과에서 볼 수 있듯이, 소수점 이하 값(0.567)은 버려지고 정수 부분인 97만 sbyte 타입으로 반환됩니다.

예제 2

이번에는 1보다 작은 소수 값을 변환하는 또 다른 예제를 살펴보겠습니다.

using System;
public class Demo {
   public static void Main(){
      Decimal val = 0.001m;
      Console.WriteLine("Decimal 값 = "+val);
      sbyte res = Decimal.ToSByte(val);
      Console.WriteLine("SByte 값 = "+res);
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 출력이 생성됩니다.

Decimal 값 = 0.001
SByte 값 = 0

참고 사항

Decimal.ToSByte() 메서드는 변환 과정에서 소수점 이하 자릿수를 잘라내어(truncation) 정수 부분만 반환합니다. 따라서 반올림이 아닌 절삭 방식으로 동작한다는 점에 유의해야 합니다. 또한, 변환 대상 값이 sbyte가 표현할 수 있는 범위(-128 ~ 127)를 벗어나면 OverflowException이 발생하므로, 변환 전에 값의 범위를 확인하는 것이 안전합니다.