코드 페이지
코드 페이지는 숫자, 문장 부호 및 기타 문자를 포함할 수 있는 문자 집합입니다. 언어 및 로캘마다 다른 코드 페이지를 사용할 수 있습니다. 예를 들어 ANSI 코드 페이지 1252는 미국 영어와 대부분의 유럽 언어에 사용되고, OEM 코드 페이지 932는 일본어 간지에 사용됩니다.
코드 페이지는 단일 바이트 또는 멀티바이트 값에 대한 문자 매핑으로 표에 표시될 수 있습니다. 여러 코드 페이지는 0x00 - 0x7F 범위의 문자에 대한 ASCII 문자 집합을 공유합니다.
Microsoft 런타임 라이브러리는 다음 유형의 코드 페이지를 사용합니다.
시스템 기본 ANSI 코드 페이지. 기본적으로 시작 시 런타임 시스템은 자동으로 멀티바이트 코드 페이지를 운영 체제에서 가져온 시스템 기본 ANSI 코드 페이지로 설정합니다. 다음을 호출해도
setlocale ( LC_ALL, "" );
로캘이 시스템 기본 ANSI 코드 페이지로 설정됩니다.
로캘 코드 페이지. 여러 런타임 루틴의 동작은 로캘 코드 페이지를 포함하는 현재 로캘 설정에 따라 달라집니다. (자세한 내용은 를 참조하세요 .로캘.) 기본적으로 Microsoft 런타임 라이브러리의 모든 로캘 종속 루틴은 "C" 로캘에 해당하는 코드 페이지를 사용합니다. 런타임에 호출과 함께 사용 중인 로캘 코드 페이지를 변경하거나 쿼리할
setlocale
수 있습니다.멀티바이트 코드 페이지. 런타임 라이브러리에서 대부분의 멀티바이트 문자 루틴 동작은 현재 멀티바이트 코드 페이지 설정에 따라 달라집니다. 기본적으로 이러한 루틴은 시스템 기본 ANSI 코드 페이지를 사용합니다. 런타임에 각각 멀티바이트 코드 페이지를
_getmbcp
쿼리하고_setmbcp
변경할 수 있습니다."C" 로캘은 C 프로그램에서 일반적으로 실행하던 로캘에 해당되도록 ANSI에 의해 정의됩니다. "C" 로캘 코드 페이지("C" 코드 페이지)는 ASCII 문자 집합에 해당합니다. 예를 들어 "C" 로캘에서
islower
는 0x61 - 0x7A 사이의 값에만 true를 반환합니다. 다른 로캘에서 해당 로캘islower
에 정의된 대로 이러한 값과 기타 값을 반환true
할 수 있습니다.