Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/18: Рейтинг темы: голосов - 18, средняя оценка - 4.78
6 / 3 / 0
Регистрация: 25.06.2012
Сообщений: 132
1

Русифицировать консоль (кракозябры вместо русских букв)

05.01.2016, 17:25. Показов 3262. Ответов 7
Метки нет (Все метки)

Я начинающий в С++.
Вопрос такой: почему вместо того что вводишь с клавиатуры, выводится совсем не то?
Вот код:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <conio.h>;
#include <iostream>;
 
using std::cin;
using std::cout;
using std::endl;
 
int main()
{
    setlocale(LC_ALL,"Russian");
    char Mother,Father,Sister,Brother; 
    cout << "Введите ФИО матери:\t";
    cin >> Mother;
    cout << "Введите ФИО отца:\t";
    cin >> Father;
    cout << "Введите ФИО сестры:\t";
    cin >> Sister;
    cout << "Введите ФИО брата:\t";
    cin >> Brother;
    cout << "\n";
    cout << "\n";
    cout << "Введённые данные:\n";
    cout << "\n";
    cout << "ФИО матери:\t" << Mother << endl;
    cout << "ФИО отца:\t" << Father << endl;
    cout << "ФИО сестры:\t" << Sister << endl;
    cout << "ФИО брата:\t" << Brother;
 
    _getch();
return 0;
}
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.01.2016, 17:25
Ответы с готовыми решениями:

Появляются "кракозябры" вместо русских символов!
Что делать если вместо русского текста в cout &lt;&lt; , появляются непонятные символы?

Иероглифы вместо русских букв
Как сделать в С что бы вместо иероглифов были русские буквы

Иероглифы вместо русских букв и Красная строка
Здравствуйте! Я в этом деле новичок, поэтому прошу помощи: 1) Почему у меня вместо русских букв...

Вывод непонятных символов вместо русских букв
Здравствуйте, возникла такая проблема, что при выводе строки в методе Show() тот текст, который...

7
493 / 375 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
05.01.2016, 17:30 2
Цитата Сообщение от Tot Посмотреть сообщение
почему вместо того что вводишь
что ты вводишь?
0
502 / 314 / 236
Регистрация: 18.02.2013
Сообщений: 754
05.01.2016, 17:31 3
char это символ, а нужно массив символов char mas[50]
0
493 / 375 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
05.01.2016, 17:31 4
Цитата Сообщение от Tot Посмотреть сообщение
char Mother,Father,Sister,Brother;
char - может вместить всего один символ, допустим 'a' или другой, но только один. Используй массив, или есть класс std::string
0
92 / 11 / 10
Регистрация: 09.12.2015
Сообщений: 30
05.01.2016, 17:38 5
Лучший ответ Сообщение было отмечено gru74ik как решение

Решение

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#include <conio.h>
#include <iostream>
#include <string>
using std::cin;
using std::cout;
using std::endl;
using std::string;
 
int main()
{
    setlocale(LC_ALL, "Russian");
    string Mother, Father, Sister, Brother;
    cout << "Введите ФИО матери:\t";
    getline(cin, Mother);
    cout << "Введите ФИО отца:\t";
    getline(cin, Father);
    cout << "Введите ФИО сестры:\t";
    getline(cin, Sister);
    cout << "Введите ФИО брата:\t";
    getline(cin, Brother);
    cout << "\n";
    cout << "\n";
    cout << "Введённые данные:\n";
    cout << "\n";
    cout << "ФИО матери:\t" << Mother << endl;
    cout << "ФИО отца:\t" << Father << endl;
    cout << "ФИО сестры:\t" << Sister << endl;
    cout << "ФИО брата:\t" << Brother;
 
    _getch();
    return 0;
}
1
6 / 3 / 0
Регистрация: 25.06.2012
Сообщений: 132
05.01.2016, 18:07  [ТС] 6
Зи, Ввожу данные на русском, но выводит первым знак вопроса, а за ним абракадабру. Как сделать, чтобы в поток cin выводился русский текст?
0
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 7
05.01.2016, 18:34 7
Tot,Все нормально выводит на русском
0
Эксперт CЭксперт С++
5054 / 2241 / 330
Регистрация: 20.02.2013
Сообщений: 5,601
Записей в блоге: 24
05.01.2016, 19:03 8
Tot, возможно, стоит обратить внимание на прикреплённые темы?
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.01.2016, 19:03

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

_getch() в цикле выводит бред вместо русских букв
Извращался тут с getch(), возникла небольшая, но странная (для меня) проблема. В программе такого...

Вывод в документ: китайские иероглифа вместо русских или английских букв
В коде какато фигня. Он написан и по идее работает, но вот с языком вывода проблема. Когда...

Кракозябры вместо русских букв
Здравствуйте, столкнулся уже давненько с такой штукой, как-то раньше поставил виндовс установил...

Вместо русских букв кракозябры
После отправки формы с сайта, вместо русских букв в БД кракозябры. Соответственно и на сайт...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.