Namespaces
Variants

Character sets and encodings

From cppreference.net

목차

기본 문자 집합

다음 95개의 문자로 구성된 기본 문자 집합 :

코드 포인트 문자 글리프
U+0009 문자 탭
U+000B 행 탭
U+000C 폼 피드 (FF)
U+0020 공백
U+0021 느낌표 !
U+0022 인용 부호 "
U+0023 숫자 기호 #
U+0025 퍼센트 기호 %
U+0026 앰퍼샌드 &
U+0027 아포스트로피 '
U+0028 왼쪽 괄호 (
U+0029 오른쪽 괄호 )
U+002A 별표 *
U+002B 더하기 기호 +
U+002C 쉼표 ,
U+002D 하이픈-마이너스 -
U+002E 마침표 .
U+002F 슬래시 /
U+0030 .. U+0039 숫자 영 .. 구 0 1 2 3 4 5 6 7 8 9
U+003A 콜론 :
U+003B 세미콜론 ;
U+003C 작다 기호 <
U+003D 등호 =
U+003E 크다 기호 >
U+003F 물음표 ?
U+0041 .. U+005A 라틴 대문자 A .. Z A B C D E F G H I J K L M

N O P Q R S T U V W X Y Z

U+005B 왼쪽 대괄호 [
U+005C 역슬래시 \
U+005D 오른쪽 대괄호 ]
U+005E 서컴플렉스 액센트 ^
U+005F 밑줄 _
U+0061 .. U+007A 라틴 소문자 a .. z a b c d e f g h i j k l m

n o p q r s t u v w x y z

U+007B 왼쪽 중괄호 {
U+007C 수직선 |
U+007D 오른쪽 중괄호 }
U+007E 틸드 ~

C++와 달리, U+000A LINE FEED (LF) 문자는 기본 문자 집합에 포함되지 않습니다. 대신, 소스 파일의 각 텍스트 줄 끝을 나타내는 어떤 방법이 있어야 하며, 문서는 이러한 줄 끝 표시자를 단일 개행 문자인 것처럼 취급합니다.

기본 문자 집합은 기본 소스 문자 집합 으로도 알려져 있습니다.

기본 실행 문자 집합

기본 실행 문자 집합 은 기본 문자 집합의 모든 구성원과 다음 문자들을 포함합니다:

코드 단위 문자
U+0000 Null
U+0007 Bell
U+0008 Backspace
U+000A Line feed (LF)
U+000D Carriage return (CR)

각 기본 실행 문자 집합에 대해 멤버들의 값은 음수가 아니어야 하며 서로 구별되어야 합니다. 소스 및 실행 기본 문자 집합 모두에서, 위의 10진수 숫자 목록에서 0 이후의 각 문자 값은 이전 값보다 하나 더 커야 합니다. U+0000 NULL 문자는 값 0을 가집니다.

기본 실행 문자 집합의 각 멤버 표현은 바이트에 맞습니다.

C++에서 기본 실행 문자 집합은 기본 리터럴 문자 집합 기본 실행 와이드 문자 집합 으로도 알려져 있습니다.

리터럴 인코딩

literal encoding 은 인코딩 접두사 없이 character constant 또는 string literal 내의 값들로 실행 문자 집합의 문자들을 매핑하는 구현 정의 매핑입니다. 이는 모든 기본 실행 문자 집합 값들을 구현 정의 인코딩으로 매핑하는 것을 지원합니다. 멀티바이트 문자 시퀀스를 포함할 수 있습니다.

다음 문자들은 기본 실행 문자 집합에 포함되지 않지만, 일반 문자 상수나 일반 문자열 리터럴에서 단일 바이트로 인코딩되어야 합니다.

코드 포인트 문자 글리프
U+0024 Dollar Sign $
U+0040 Commercial At @
U+0060 Grave Accent `
(C23부터)

wide literal encoding 은 실행 문자 집합의 문자들을 L 접두사가 붙은 문자 상수나 문자열 리터럴의 값들로 매핑하는 구현 정의 매핑입니다. 이는 모든 기본 실행 문자 집합 값들을 구현 정의 인코딩으로 매핑하는 것을 지원합니다. 구현이 __STDC_MB_MIGHT_NEQ_WC__ 를 정의하지 않는 경우, 이 매핑은 모든 기본 실행 문자 집합 값들에 대해 리터럴 인코딩과 동일한 값을 생성합니다. 하나 이상의 값이 확장 실행 문자 집합의 하나 이상의 값으로 매핑될 수 있습니다.

UTF-8 인코딩은 실행 문자 집합의 문자들을 u8 접두사가 붙은 문자 상수 또는 (C23부터) 문자열 리터럴로 매핑하는 데 사용됩니다.

구현에서 정의된 인코딩이 (C23 이전) UTF-16 인코딩이 (C23부터) 실행 문자 집합의 문자들을 u 접두사가 붙은 문자 상수 또는 문자열 리터럴로 매핑하는 데 사용됩니다.

구현에서 정의된 인코딩이 (C23 이전) UTF-32 인코딩이 (C23부터) 실행 문자 집합의 문자들을 U 접두사가 붙은 문자 상수 또는 문자열 리터럴로 매핑하는 데 사용됩니다.

(C11부터)

참고 항목

ASCII 차트
C++ documentation for Character sets and encodings