Netbeans C ++ не печатает символы UTF-8

Вот очень простой код C ++:

char a00 = 'Z';
char a01 = '\u0444';
char a02[5] = {'H','e','l','l','o'};
char a03[] = {'W','o','r','l','d','\0','Z','Z'};

cout << "Simple char: " << a00
<< "\nUTF-8 char: " << a01
<< "\nFull char array: " << a02
<< "\n2nd in char array: " << a02[1]
<< "\nWith null character: " << a03 << endl;

Моя проблема в том, что когда Netbeans 8.1 пытается показать вывод такой программы, он не создает символ UTF-8.

Персонаж должен выглядеть так: ф (см .: ссылка на сайт)

Вместо этого я получаю следующий вывод:

(образ)

Я пробовал добавлять -J-Dfile.encoding=UTF-8 в netbeans_default-options внутри netbeans.conf файл, расположенный внутри etc папка. Это не имело никакого значения.

1

Решение

UTF-8 это многобайтовая кодировка символов, что означает, что большинство символов занимают несколько байтов. Так что один char недостаточно, чтобы держать большинство UTF-8 персонажи.

Вы можете хранить их в строке, как это:

std::string s = "\u0444";
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]