반응형
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);
}
반응형
'C# > C#_기초강의' 카테고리의 다른 글
(C#) 자료형: 암시적 형식 지역 변수 선언: var (0) | 2023.04.20 |
---|---|
(C#) 자료형: string 문자열 형식 (0) | 2023.04.20 |
(C#) 자료형: bool (0) | 2023.04.20 |
(C#) 값 형식과 참조 형식 reference types and value types (0) | 2023.04.20 |
(C#) 프로젝트 생성하기: C# 시작하기, 실습 하는 방법, 최상위문 (0) | 2023.04.20 |