Unicode проблема с Linux G ++ - PullRequest
1 голос
/ 05 ноября 2010

У меня проблема с функциями Юникода под Linux Ubuntu 10.10.Многие функции Unicode не работают правильно.Когда я пытаюсь выполнить следующий простой код:

#include <wchar.h>

int main(int argc, char *argv[])
{
    wprintf(L"test %s %s %s\n",L"one",L"two",L"three");
    return 0;
}

и скомпилировать с использованием g ++ (gcc версия 4.4.5 Ubuntu / Linaro 4.4.4.-14ubuntu5) a получаю следующие результаты:

test o t t

вместо ожидаемого:

test one two three

Также другие функции для работы со строками Unicode работают некорректно.Много моего кода я разрабатываю под MS Windows, и это мои первые попытки программирования на Linux.

(та же ошибка появляется на двух Linux-машинах, где я тестировал этот фрагмент)

Спасибо за любой совет.

1 Ответ

6 голосов
/ 05 ноября 2010

Вместо этого вы хотите %ls, как указано на справочной странице wprintf(3).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...