Поддержка Юникода в компиляторе и компоновщике

Большинство средств сборки Microsoft C/C++ (MSVC) поддерживают входные и выходные данные Юникода.

Имена файлов

Имена файлов, указанные в командной строке или в директивах компилятора (например #include, могут содержать символы Юникода).

Файлы исходного кода

Символы Юникода поддерживаются в идентификаторах, макросах, строковых и символьных литералах, а также в комментариях. Также поддерживаются универсальные имена символов.

Юникод можно ввести в файл исходного кода в следующих кодировках:

  • Маленький эндиан UTF-16 с меткой порядка байтов или без нее (BOM)

  • UTF-16 большой эндиан с BOM или без нее

  • UTF-8 с меткой порядка байтов

В интегрированной среде разработки Visual Studio файлы можно сохранять в нескольких форматах кодирования, включая Юникод. Сохраните их в диалоговом окне "Сохранить файл как" с помощью раскрывающегося списка кнопки "Сохранить ". Выберите "Сохранить с кодировкой " в раскрывающемся списке. Затем в диалоговом окне "Дополнительные параметры сохранения" выберите кодировку из раскрывающегося списка. Нажмите кнопку "ОК ", чтобы сохранить файл.

Выходные данные

Во время компиляции компилятор выводит диагностика в консоль в UTF-16. Символы, которые можно отобразить в консоли, зависят от свойств окна консоли. Выходные данные компилятора, перенаправленные в файл, находятся в текущем коде консоли ANSI.

Файлы ответов компоновщика и .DEF файлы

Файлы ответов и .DEF файлы могут быть UTF-16 или UTF-8 с BOM или ANSI.

.asm и .cod дампы

.asm и .cod дампы находятся в ANSI по умолчанию для совместимости с MASM. Используется /FAu для вывода UTF-8.

При указании /FAsперемешанный источник получает печать напрямую. Например, если исходный код — UTF-8, и вы не указали /FAsu.

См. также

Использование набора инструментов MSVC из командной строки