Как подключить русский язык в c
При использовании кириллических символов мы можем столкнуться с ситуацией, когда вместо кириллических символов отображаются непонятные знаки. Особенно это актуально для ОС Windows. И в этом случае необходимо явным образом задать текущую локаль (культуру) для вывода символов. В Си это делается с помощью функции setlocale() , определение которой имеется в заголовочном файле locale.h .
Итак, изменим код, который использовался в прошлых темах следующим образом:
#include int main(void)
Компиляция и запуск в ОС Windows может выглядеть следующим образом:
Вместо русских слов я получаю непонятные символы, и это не то, что ожидалось. Теперь изменим код, применив функцию setlocale:
#include #include int main(void)
Поскольку функция setlocale определена в файле locale.h, то он подключается с помощью директивы #include .
Повторно компилируем и запустим приложение:

Стоит отметить, что в качестве кодировки текстового файла в этом случае должна использоваться кодировка ANSI или Windows-1251, но не UTF-8.
На некоторых платформах, например, Ubuntu 16.04, мы можем не столкнуться с подобной проблемой. И в этом случае вызов функции setlocale просто не окажет никакого влияния.
Русский язык в консоли

Чтобы консольное приложение Си корректно выводило русские символы, нужно выбрать locale по умолчанию.
- Подключить библиотеку locale.h #include
- В функции main() вызвать функцию setlocale(): setlocale(LC_ALL, «Russian»);
Для C++ аналогично:
- Подключить библиотеку clocale #include
- В функции main() вызвать функцию setlocale(): setlocale(LC_ALL, «Russian»);
Русский язык в консоли C++
Вы наверное не раз пытались вывести в консольное приложение русский текст, но вместо него выводились разные кракозябры.
К примеру, если мы напишем такой код на С++
#include using namespace std; int main()
То после компиляции, вот что будет выдавать нам консольное окно программы.
Если же мы будем использовать функцию setlocale() внутри функции main()
#include using namespace std; int main()
То получим вместо иероглифов нормальный русский шрифт, вуаля:
Также, можно опустить последний аргумент функции — setlocale(LC_ALL, «Russian»); можно заменить на setlocale(0, «»); — работоспособность программы от этого не изменится.
Вывод русского языка

Ввод русского языка
Не могу понять, как сделать так, чтобы вместо непонятных иероглифов в командной строке выдавался.
Обеспечить поддержку русского языка в программе
Как сделать чтоб когда я пишу например: printf("\nСписок чего-то там"); Выбивало не какие то.
Поддержка русского языка в Embarcadero Turbo C 2.01
установил embarcaderoTurbo C 2.01 как сделать чтоб работала поддержка русского языка?
