Не выводится кириллица в консоль - C (СИ)
Формулировка задачи:
main.c
menu.c
menu.h
#include <stdlib.h>
#include "menu.h"
int main(){
menu_item list[]=
{
{"Ввод",NULL},
{"Вывод",NULL},
{"Сортировать",NULL},
{"Сохранить",NULL},
{"Загрузить",NULL}
};
system("chcp 1251 > nul");
menu(list,sizeof list/sizeof *list);
system("pause");
}#include <stdio.h>
#include <stdlib.h>
#include "menu.h"
void menu(const menu_item list[], int n){
int i;
for(i=0;i<n;++i)
printf("%d. %s\n", i+1, list[i].text);
printf("%d. %s\n", 0, "Выход");
system("pause");
}#ifndef MENU_H
#define MENU_H
typedef struct{
const char *text;
int(*command)(void);
}menu_item;
void menu(const menu_item list[], int n);
#endifРешение задачи: «Не выводится кириллица в консоль»
textual
Листинг программы
setlocale(LC_ALL, "Russian");
Объяснение кода листинга программы
- Устанавливается локаль для русскоязычной консоли с помощью функции setlocale(LC_ALL,
Russian). - Вводится строка, которую необходимо отобразить в консоли.
- Выводится введенная строка с помощью функции printf(
%s, str). - Если введенная строка содержит кириллицу, то она будет отображена в консоли.