1

Тема: Кирилиця в консолі С++

Доброго вечора! Підкажіть будь-ласка чим це можна замінити?

char cConsole::toСyrillic(char с)
{
    switch (с)
    {
    case 'а': с = char(-96); break;
    case 'б': с = char(-95); break;
    case 'в': с = char(-94); break;
    case 'г': с = char(-93); break;
    case 'д': с = char(-92); break;
    case 'е': с = char(-91); break;
    case 'ё': с = char(-15); break;
    case 'ж': с = char(-90); break;
    case 'з': с = char(-89); break;
    case 'и': с = char(-88); break;
    case 'й': с = char(-87); break;
    case 'к': с = char(-86); break;
    case 'л': с = char(-85); break;
    case 'м': с = char(-84); break;
    case 'н': с = char(-83); break;
    case 'о': с = char(-82); break;
    case 'п': с = char(-81); break;
    case 'р': с = char(-32); break;
    case 'с': с = char(-31); break;
    case 'т': с = char(-30); break;
    case 'у': с = char(-29); break;
    case 'ф': с = char(-28); break;
    case 'х': с = char(-27); break;
    case 'ц': с = char(-26); break;
    case 'ч': с = char(-25); break;
    case 'ш': с = char(-24); break;
    case 'щ': с = char(-23); break;
    case 'ъ': с = char(-22); break;
    case 'ы': с = char(-21); break;
    case 'ь': с = char(-20); break;
    case 'э': с = char(-19); break;
    case 'ю': с = char(-18); break;
    case 'я': с = char(-17); break;
    case 'А': с = char(-128); break;
    case 'Б': с = char(-127); break;
    case 'В': с = char(-126); break;
    case 'Г': с = char(-125); break;
    case 'Д': с = char(-124); break;
    case 'Е': с = char(-123); break;
    case 'Ё': с = char(-16);  break;
    case 'Ж': с = char(-122); break;
    case 'З': с = char(-121); break;
    case 'И': с = char(-120); break;
    case 'Й': с = char(-119); break;
    case 'К': с = char(-118); break;
    case 'Л': с = char(-117); break;
    case 'М': с = char(-116); break;
    case 'Н': с = char(-115); break;
    case 'О': с = char(-114); break;
    case 'П': с = char(-113); break;
    case 'Р': с = char(-112); break;
    case 'С': с = char(-111); break;
    case 'Т': с = char(-110); break;
    case 'У': с = char(-109); break;
    case 'Ф': с = char(-108); break;
    case 'Х': с = char(-107); break;
    case 'Ц': с = char(-106); break;
    case 'Ч': с = char(-105); break;
    case 'Ш': с = char(-104); break;
    case 'Щ': с = char(-103); break;
    case 'Ъ': с = char(-102); break;
    case 'Ы': с = char(-101); break;
    case 'Ь': с = char(-100); break;
    case 'Э': с = char(-99);  break;
    case 'Ю': с = char(-98);  break;
    case 'Я': с = char(-97);  break;
    case 'і': с = 'i';  break;
    }
    return с;
}

2

Re: Кирилиця в консолі С++

Якщо це для того, щоб вивести кириличний текст у консоль, то див. http://replace.org.ua/topic/2021/

Подякували: sn7770666k, 0xDADA11C72

3 Востаннє редагувалося NemoUA (07.12.2016 18:07:26)

Re: Кирилиця в консолі С++

Колись теж страдав над цим...
На початок коду підключи бібліотеку <windows.h>

#include<iostream>
#include<windows.h>
/*...*/

Далі на початку main() пропиши
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
Це буде виглядати приблизно так:

void main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    /*...*/
}

Якщо це консольний проект то натисни правой кнопкою по назві консолі
Вибери пункт Prorepties
Вибери розділ Font
І вибери шрифт Consola або Lucida Console і встановіть розмір шрифта за бажанням.
Натискаєм ОК і "Вуоля" — Всі українські, російські і інші символи у Вас відображатимуть коректо + можливий ввід українською і іншими мовами !!!

Натисніть Дякую якщо я вам допоміг!

Код працює коректо в IDE - Microsoft Visual Studio 2012 / 2013