Как распечатать другой язык?
В C после установки новой локали сsetlocale(LC_ALL, "Hebrew")
Я мог напечатать новое локальное имя (Hebrew.Israel.1255), но не мог понять, как использовать кодировку новой локали, так какprintf(%c, 240)
напечатано '?' вместо еврейской буквы ( карта 1255).
,
Заранее спасибо!
1 ответ
%c
спецификатор формата всегда печатает байт с заданным значением. Это не имеет ничего общего с языком. Вы должны использовать что-то вроде printf("%lc", 0x05D0);
который будет печатать широкий символ (который кодируется в Unicode на всех вменяемых реализациях) в кодировке текущей локали.