C#/C#_기초강의

(C#) 자료형: char 문자형

코딩ABC 2023. 4. 20. 09:15
반응형

C# 에서 문자는 유니코드(UTF-16)로 표현됩니다.

type 범위 크기 .NET 형식
char U+0000 ~ U+FFFF 16비트(2 바이트) System.Char

 

char 형식은 비교, 같음, 증가 및 감소 연산자를 지원합니다.

char 피연산자의 경우 산술 및 비트 논리 연산자는 문자에 대한 연산을 수행하고 int 형식의 결과를 반환합니다.

 

다음 예제는 문자를 표현하는 몇 가지 방법을 보여주는 예입니다.

  static void Main(string[] args)
  {
            char c1 = 'A';
            char c2 = '\u0041';
            char c3 = '\x0041';
            char c4 = (char)65;
            Console.WriteLine($"{c1} {c2} {c3} {c4}");
  }

문자 리터럴에는 작은 따옴표로 묶어야 하며, 유니코드 문자이기 때문에 전 세계의 모든 문자를 동일하게 1 문자로 취급합니다.

char a = 'A';
char b = '한';
char c = '韓';
char d = "A";    // 오류 -- 큰 따옴표를 사용할 수 없습니다.
char a =65;      // 오류 -- C언어에서 가능했지만 C#에서는 오류입니다. int형이 char형으로 자동변환되지 않습니다.

 

유니코드 문자를 표현할 때, 4개의 16진수를 모두 지정해야 합니다.

즉, \u004A는 유효한 표현이지만, u041 또는 \u41은 잘못된 표현입니다.

16진수로 표현된 문자는 앞에 오는 0을 생략할 수 있습니다.

즉, \x0041, \x041, \x41 모두 유효한 문자이며, 동일한 문자입니다.

char c1 = '\u0041';
char c2 = '\u41';          // 오류

char c3 = '\x0041';
char c4 = '\x41';
        static void Main(string[] args)
        {
            for(char c='A'; c<='Z';c++)
                Console.Write(c);
        }

 

 

 

반응형