Unicode Привет, мир для C?

Я пытаюсь вывести такие вещи, как 안, 蠀, ☃ из C

#include <wchar.h>
int main()
{
    fwprintf(stdout, L"안, 蠀, ☃\n");
    return 0;
}

вывод есть?,?,?

Как мне распечатать эти символы?

Редактировать:

#include <wchar.h>
#include <locale.h>
int main()
{
    setlocale(LC_CTYPE, "");
    fwprintf(stdout, L"안, 蠀, ☃\n");
    return 0;
}

это добилось цели. вывод 안, 蠀, ☃. за исключением того, что китайский символ и снеговик отображаются в виде окна в моем urxvt, вероятно, потому что я не включил эти локали.

$ locale -a
C
en_US
en_US.iso88591
en_US.iso885915
en_US.utf8
ja_JP.utf8
ko_KR
ko_KR.euckr
ko_KR.utf8
korean
korean.euc
POSIX
zh_CN.utf8

какую локаль мне нужно включить, чтобы отображались китайские иероглифы и снеговик? может мне нужен шрифт?

будет ли работать вышеуказанная программа на Windows?

Ответы на вопрос(5)

Ваш ответ на вопрос