Top.Mail.Ru
Ответы
Аватар пользователя
12лет
Изменено
Аватар пользователя
Аватар пользователя
Аватар пользователя
Программирование
+3

Visual studio русификация консольного приложения

Имеется консольное приложение win32, реализующая список. Программу необходимо полностью русифицировать. при setlocale(LC_ALL, "russian") русифицируются пункты меню, но после добавления в список русских слов они отображаются неправильно. А при setlocale(LC_ALL, "1251") все наоборот, те меню кракозябами а после добавления в список слова отображаются нормально. Как быть?

По дате
По рейтингу
Аватар пользователя
Новичок
12лет

#include <locale>
#include <iostream>
using namespace std;
int main() {
wcin.imbue(locale(".866"));
wcout.imbue(locale(".866"));
wcout << L"Как тебя зовут? ";
wstring name;
wcin >> name;
wcin.get();
wcout << L"Привет, " << name << L"!\n";
wchar_t buf[20];
wcout << L"Строка (не больше 20 симв.) ? ";
wcin.getline(buf, 20);
wcout << L"Вы ввели: " << buf << endl;
}

Аватар пользователя
Просветленный
12лет

Я не понял этой штуки, но в консоли и впрямь реальные проблемы с кодировкой.
Я окончил всем тем. что я везде использовал 2 функции - OemToAnsi и AnsiToOem, которые собтсвнено и переводили все для консоли из моей программы.
Еще дурацкий способ - писать программу в досовской кодировке :)