«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как распечатать UTF-8 из консольных приложений C++ в Windows?

Как распечатать UTF-8 из консольных приложений C++ в Windows?

Опубликовано 22 декабря 2024 г.
Просматривать:364

How to Print UTF-8 from C   Console Applications on Windows?

Печать UTF-8 из консольных приложений C в Windows

При разработке консольных приложений C в английских системах Windows с использованием Visual Studio 2008 пользователи могут столкнуться с проблемами при отображении UTF- 8 правильно закодировал контент через cout или wcout. Вот как решить эту проблему:

Решение:

Решение включает в себя настройку выходной кодовой страницы консоли для поддержки UTF-8. Выполните следующие действия:

  1. Включите файлы заголовков и .
  2. Используйте директиву #pragma Execution_character_set, чтобы установить набор символов выполнения в UTF-8.
  3. В основной функции вызовите SetConsoleOutputCP(65001), чтобы изменить выходную кодовую страницу на UTF-8.
  4. Используйте printf для вывода текста в кодировке UTF-8.

Пример кода:

#include 
#include 

#pragma execution_character_set("utf-8")

int main()
{
    SetConsoleOutputCP(65001);
    printf("Testing unicode -- English -- Ελληνικά -- Español -- Русский. aäbcdefghijklmnoöpqrsßtuüvwxyz\n");
}

Дополнительные советы:

  • Сохраните исходный файл как Юникод (UTF-8 с подписью) — кодовая страница 65001.
  • Задайте для Проект -> Свойства -> Свойства конфигурации -> Общие -> Набор символов значение Использовать набор символов Юникода.
  • Хотя можно предложить изменить шрифт консоли на Lucida Console, в этом случае для правильного отображения это не обязательно.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3