산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> C 언어

C# 상수 & 리터럴 마스터하기: 타입, 규칙, 모범 사례

상수(Constants)는 프로그램 실행 중에 변경될 수 없는 고정 값입니다. 이러한 고정 값을 리터럴(Literals)이라고도 합니다. 상수는 정수, 부동소수점, 문자, 문자열 등 모든 기본 데이터 타입일 수 있으며, 열거형 상수도 포함됩니다.

상수는 일반 변수처럼 취급되지만, 정의 후 값을 수정할 수 없다는 점이 다릅니다.

정수 리터럴 (Integer Literals)

정수 리터럴은 10진수 또는 16진수 상수일 수 있습니다. 접두사로 진법을 지정합니다.

접미사로 타입을 지정할 수 있습니다 (U: unsigned, L: long, 대소문자 구분 없음, 순서 무관).

정수 리터럴 예시

212        // 합법 (10진수 int)
215u       // 합법 (unsigned int)
0xFeeL     // 합법 (16진수 long)

85         // 10진수
0x4b       // 16진수
30         // int
30u        // unsigned int
30l        // long
30ul       // unsigned long

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

부동소수점 리터럴은 정수부, 소수점, 소수부, 지수부로 구성됩니다. 10진수 형태 또는 지수 형태로 표현 가능합니다.

부동소수점 리터럴 예시

3.14159       // 합법 (10진수 형태)
314159E-5F    // 합법 (지수 형태, float)
510E          // 불법: 불완전한 지수
210f          // 불법: 소수점이나 지수 없음
.e55          // 불법: 정수부 또는 소수부 누락

10진수 형태에서는 소수점, 지수, 또는 둘 다를 포함해야 합니다. 지수 형태에서는 정수부, 소수부, 또는 둘 다를 포함해야 합니다. 부호 있는 지수는 e 또는 E로 표기합니다.

문자 상수 (Character Constants)

문자 리터럴은 작은따옴표로 감쌉니다. 예: 'x'. char 타입 변수에 저장됩니다.

주요 이스케이프 시퀀스

이스케이프 시퀀스의미
\\\ 문자
\'' 문자
\"" 문자
\?? 문자
\a경고음(벨)
\b백스페이스
\f폼 피드
\n줄바꿈(Newline)
\r캐리지 리턴
\t수평 탭
\v수직 탭
\xhh...16진수 (한 자리 이상)

이스케이프 시퀀스 사용 예제

using System;
namespace EscapeChar
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("Hello\tWorld\n\n");  // 탭과 줄바꿈 출력
            Console.ReadLine();
        }
    }
}

출력: Hello(탭)World(두 줄 공백)

문자열 리터럴 (String Literals)

문자열 리터럴은 큰따옴표("") 또는 @""(원시 문자열)로 감쌉니다. 문자 리터럴과 유사하게 일반 문자, 이스케이프 시퀀스, 유니버설 문자를 포함할 수 있습니다.

"hello, dear"
"hello, \ dear"        // 줄바꿈하며 이어쓰기
"hello, " "d" "ear"    // 공백으로 구분된 문자열 자동 결합
@"hello dear"          // 원시 문자열 (이스케이프 처리 안 함)

상수 정의 (const 키워드)

const <데이터_타입> <상수_이름> = 값;

상수 사용 예제

using System;
namespace DeclaringConstants
{
    class Program
    {
        static void Main(string[] args)
        {
            const double pi = 3.14159;  // 상수 선언
            double r;
            
            Console.WriteLine("반지름 입력: ");
            r = Convert.ToDouble(Console.ReadLine());
            
            double areaCircle = pi * r * r;
            Console.WriteLine("반지름: {0}, 넓이: {1}", r, areaCircle);
            Console.ReadLine();
        }
    }
}

출력 예시: 반지름: 3, 넓이: 28.27431

핵심: const는 컴파일 타임 상수이며, readonly는 런타임 상수(생성자에서 초기화 가능)로 구분해 사용하세요.

C 언어

  1. 교류 회로에서 저항, 인덕터, 커패시터 종합 요약
  2. C# 키워드와 식별자 이해: 규칙, 목록, 모범 사례
  3. C# 클래스와 객체: 견고한 OOP를 위한 기초 다지기
  4. C# 추상 클래스와 추상 메서드: 실전 가이드
  5. C# partial 클래스와 partial 메서드 이해하기
  6. C# sealed 클래스와 메서드: 상속/오버라이딩 제한으로 코드 안전성·성능 높이기
  7. C++ 변수, 리터럴, 상수 마스터하기: 종합 가이드
  8. C 키워드와 식별자: 실전 가이드
  9. C 변수, 상수, 리터럴: 완전 가이드
  10. C 변수, 데이터 타입, 상수 – 실전 가이드