Programing

10 진수 유형에 대한 선언 접미사

crosscheck 2020. 8. 13. 07:49
반응형

10 진수 유형에 대한 선언 접미사


코드에서 십진수 리터럴을 사용하려면 m 접미사가 존재하는 것을 보았습니다 (m은 돈을 의미합니다). 이것은 모든 소수에 적합하거나 더 일반적인 어시 그먼트가 존재합니까 (d는 double을 나타냅니다. 즉, 직접 변환이 지원되지만 올바른 것이 아닙니다).

object decimalValue=2m;

객체 할당을 예로 들어 보았습니다.

decimal decimalValue=2;

... 2는 컴파일러를 통해 10 진수로 해석되어야한다는 암시 적 분명합니다.

편집 : m괜찮은 것 같습니다 .msdn 은 십진수 유형의 예로 사용합니다.


에 설명 C # 언어 사양 , 장 2.4.4 :

float f = 1.2f;
double d = 1.2d;
uint u = 2u;
long l = 2L;
ulong ul = 2UL;
decimal m = 2m;

int, byte, sbyte, short, ushort에는 아무것도 없습니다.


접미사가 없으면 숫자 실수 리터럴은 Double이됩니다. m 접미사는 숫자 실수 리터럴이 Decimal이어야 함을 지정합니다.

부동 소수점 값 (예 : Double)에 대한 산술이 부정확하기 때문에 실제로 아는 것이 중요합니다. 예를 들면 :

object decimalValue=(5.32 + 2.23);

여기서 decimalValue는 실제로 예상치 못한 7.5500000000000007의 Double 값을 포함합니다! 7.55를 원하면 다음과 같이 할 수 있습니다.

object decimalValue=(5.32m + 2.23m);

더 일반적인 접미사가 있는지 여부에 대한 질문에 대답하려면 m은 C #에서 Decimal 유일한 접미사입니다. 언급했듯이 돈을 의미 할 수도 있지만, Double!에서 사용하는 d가 아닌 다른 것을 사용했습니다.

추가 정보 : 10 진수 (C # 참조)


Declare Decimal in C #에 대한 간단한 대답

decimal firstMoney = 141.28m;

O / P : 141.28

decimal secondMoney = 100.00m;

O / P : 100

자세한 내용은 MSDN을 참조하십시오 .

희망은 누군가를 돕습니다.

참고 URL : https://stackoverflow.com/questions/3271791/declaration-suffix-for-decimal-type

반응형