컴파일러 및 링커에서의 유니코드 지원
대부분의 MSVC(Microsoft C/C++) 빌드 도구는 유니코드 입력 및 출력을 지원합니다.
파일 이름
명령줄 또는 컴파일러 지시문(예: #include
)에 지정된 파일 이름에는 유니코드 문자가 포함될 수 있습니다.
소스 코드 파일
유니코드 문자는 식별자, 매크로, 문자열 및 문자 리터럴 및 주석에서 지원됩니다. 유니버설 문자 이름도 지원됩니다.
유니코드는 다음 인코딩에서 소스 코드 파일에 입력할 수 있습니다.
BOM(바이트 순서 표시) 유무에 관계없이 UTF-16 little endian
BOM 유무에 관계없이 UTF-16 big endian
UTF-8(BOM 포함)
Visual Studio IDE에서 유니코드 형식을 비롯한 여러 인코딩 형식으로 파일을 저장할 수 있습니다. 저장 단추의 드롭다운을 사용하여 다른 이름으로 파일 저장 대화 상자에 저장합니다. 드롭다운에서 인코딩으로 저장을 선택합니다. 그런 다음, 고급 저장 옵션 대화 상자의 드롭다운 목록에서 인코딩을 선택합니다. 확인을 선택하여 파일을 저장합니다.
출력
컴파일하는 동안 컴파일러는 UTF-16에서 콘솔에 진단을 출력합니다. 콘솔에 표시할 수 있는 문자는 콘솔 창 속성에 따라 달라집니다. 파일로 리디렉션된 컴파일러 출력은 현재 ANSI 콘솔 코드 페이지에 있습니다.
링커 응답 파일 및 .DEF
파일
응답 파일 및 .DEF
파일은 BOM이 있는 UTF-16 또는 UTF-8 또는 ANSI일 수 있습니다.
.asm
및 .cod
덤프
.asm
및 .cod
덤프는 MASM과의 호환성을 위해 기본적으로 ANSI에 있습니다. UTF-8을 출력하는 데 사용합니다 /FAu
.
지정 /FAs
하면 혼합된 원본이 직접 인쇄됩니다. 예를 들어 소스 코드가 UTF-8이고 지정 /FAsu
하지 않은 경우 왜곡된 것처럼 보일 수 있습니다.