Страницы

Поиск по вопросам

среда, 19 декабря 2018 г.

Как выводить на экран и вводить данные типа wchar_t[]?

Вопрос в том, как это сделать на Windows. На Linux-е это просто
setlocale(LC_CTYPE, ""); //а потом wprintf ...
На Windows такое не катит. Желательно, чтобы вышло как-то так.
#ifdef __linux__ setlocale(LC_CTYPE, ""); #elif defined _WIN32 //Windows #else
Нужно для вывода кириллицы, иероглифов и т. п. Нужен именно wchar_t
P. S. MinGW gcc -dumpversion 4.8.1
P. P. S. На MS Visual C++ 2010 работает ответ 1 (без stdafx.h)


Ответ

О мой бог, cygwin мне помог... -- говорил когда-то святой Георгий.
Cygwin выручил и меня!
#ifdef __linux__ setlocale(LC_CTYPE, ""); #elif defined _WIN32 //Windows #else
Теперь и этого не надо!
Просто
setlocale(LC_CTYPE, "");
Работает и на Linux, и на Windows (cygwin1.dll).
Версия компилятора g++: 4.9.2
Версия Windows: XP SP3

Комментариев нет:

Отправить комментарий