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

C# 정수 리터럴 vs 부동 소수점 리터럴: 개념부터 예제까지 한눈에

C#에서 리터럴(literal)이란 코드에 직접 작성하는 고정된 값을 의미합니다. 숫자 데이터를 다룰 때 가장 많이 사용되는 것이 바로 정수 리터럴부동 소수점 리터럴인데요. 이번 글에서는 두 리터럴의 차이점과 작성 방법을 예제와 함께 자세히 알아보겠습니다.


정수 리터럴(Integer Literal)

정수 리터럴은 10진수(decimal) 또는 16진수(hexadecimal) 형태의 상수를 의미합니다. 진법을 나타내는 접두사(prefix)를 통해 구분할 수 있으며, 규칙은 다음과 같습니다.

  • 16진수: 0x 또는 0X 접두사 사용 (예: 0x1A)
  • 10진수: 별도의 접두사 없이 그대로 작성

정수 리터럴의 몇 가지 예시를 살펴보겠습니다.

10    // int
18u   // unsigned int

u 접미사를 붙이면 부호 없는(unsigned) 정수임을 나타냅니다. 이러한 리터럴은 변수를 선언하고 초기화할 때 실제로 활용됩니다.

// int 타입 변수 선언 및 초기화
int a = 10;

정수 리터럴 예제

아래는 정수 리터럴을 변수에 할당한 뒤 콘솔에 출력하는 전체 코드입니다.

using System;

namespace Demo {
    class Program {
        static void Main(string[] args) {
            // int
            int a = 200;
            Console.WriteLine(a);
        }
    }
}

출력 결과

200

부동 소수점 리터럴(Floating-point Literal)

부동 소수점 리터럴은 크게 네 가지 요소로 구성됩니다.

  • 정수부: 소수점 앞의 숫자
  • 소수점(. ): 정수부와 소수부를 구분
  • 소수부: 소수점 뒤의 숫자
  • 지수부: e 또는 E로 시작하는 지수 표기

부동 소수점 리터럴은 십진(decimal) 형식 또는 지수(exponential) 형식으로 표현할 수 있습니다. 다음은 대표적인 예시입니다.

4.89f       // float 리터럴
314159E-5F  // 지수 형식의 float 리터럴

작성 시 주의해야 할 규칙도 있습니다.

  • 십진 형식으로 표현할 때는 반드시 소수점, 지수, 또는 둘 다를 포함해야 합니다.
  • 지수 형식으로 표현할 때는 반드시 정수부, 소수부, 또는 둘 다를 포함해야 합니다.
  • 부호 있는 지수(signed exponent)는 e 또는 E로 시작하며, 마지막의 f 또는 F 접미사는 해당 값이 float 타입임을 나타냅니다.

부동 소수점 리터럴 예제

float 타입 변수에 부동 소수점 리터럴을 할당하고 출력하는 예제입니다.

using System;
namespace Demo {
    class Program {
        static void Main(string[] args) {
            // float
            float a = 4.89f;
            Console.WriteLine(a);
        }
    }
}

출력 결과

4.89

마무리 정리

정리하면, C#에서 정수 리터럴은 int, uint 같은 정수 계열 타입에 사용되며 10진수와 16진수 표기를 지원합니다. 반면 부동 소수점 리터럴은 소수점이나 지수를 포함한 실수 값을 표현하며, f/F 접미사로 float 타입을 명시할 수 있습니다. 두 리터럴의 규칙을 정확히 이해하면 숫자 데이터를 더 안전하고 명확하게 다룰 수 있습니다.