Форум программистов, компьютерный форум CyberForum.ru

Как выводить русский текст? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 5.00
Evgeni pengwin
 Аватар для Evgeni pengwin
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 20
06.01.2013, 18:03     Как выводить русский текст? #1
помогите кто нибудь с выводом русского текста в этой программе пытался воспользоваться решениями с форума, но видимо я конченый дегенерат так и не смог ничего сделать.

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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
//простая программа ведения базы данных служащих.
#include <iostream>
#include <cstdlib>
using namespace std;
 
char name [10] [80]; //массив имен служащих.
char pfone [10] [20]; //массив телефонов служащих
float hours [10]; //массив часов отработанных за неделю
float wage [10]; //массив окладов
int menu ();
void enter(), report();
int main () 
{
    int choice;
    do {
        choice = menu(); //получаем команду выбранную пользователем.
        switch (choice){
        case 0: break;
        case 1: enter();
            break;
        case 2: report();
            break;
        default: cout << "попробуйте снова\n\n";
        }
    } while (choice != 0);
    return 0;
}
//функция возвращает команду выбранную пользователем.
int menu()
{
int choice;
cout << "0. Выход из программы\n";
    cout << "1. Ввод информации\n";
    cout << "2. генерирование отчета\n";
    cout << "\nВыберите команду: ";
    cin >> choice;
    return choice;
}
//Функция ввоа информации в базу данных.
void enter ()
{
    int i;
    char temp [80];
    for (i=0; i<10; i++) {
        cout << "Введите фамилию: ";
        cin >> name [i];
        cout << "Введите номер телефона: ";
        cin >> pfone [i];
        cout << "Введите количество отработанных часов: ";
        cin >> hours [i];
        cout << "Введите оклад: ";
        cin >> wage[i];
    }
}
//отображение отчета
void report()
{
    int i;
    for (i=0; i<10; i++){
        cout << name [i] << ' ' << pfone[i] << '\n';
        cout << "Заработная плата за неделю: "
        << wage [i] * hours [i];
        cout << '\n';
    }
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
coloc
погромист
 Аватар для coloc
409 / 245 / 15
Регистрация: 27.08.2012
Сообщений: 550
Завершенные тесты: 1
06.01.2013, 18:14     Как выводить русский текст? #2
#include <windows.h>
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
Пробовали?
Evgeni pengwin
 Аватар для Evgeni pengwin
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 20
06.01.2013, 18:17  [ТС]     Как выводить русский текст? #3
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
"Это объявление не содержит класс хранения или спецификатор типа"
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11817 / 6796 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
06.01.2013, 18:18     Как выводить русский текст? #4
Цитата Сообщение от Evgeni pengwin Посмотреть сообщение
"Это объявление не содержит класс хранения или спецификатор типа"
а не нужно вызов функций вне функции производить.
Запихните сие две строчки в начало main.
m4r1kk
2 / 2 / 0
Регистрация: 12.10.2012
Сообщений: 43
06.01.2013, 18:19     Как выводить русский текст? #5
У вас IDE какой? (среда разработки)
Evgeni pengwin
 Аватар для Evgeni pengwin
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 20
06.01.2013, 18:20  [ТС]     Как выводить русский текст? #6
ну это я понял (после того как первое написал но в мейне то же самое)
TheVlad
5 / 5 / 1
Регистрация: 24.10.2012
Сообщений: 102
06.01.2013, 18:20     Как выводить русский текст? #7
в функции пишеш setlocale(LC_ALL "rus");
Evgeni pengwin
 Аватар для Evgeni pengwin
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 20
06.01.2013, 18:21  [ТС]     Как выводить русский текст? #8
ms visual C++ express 2012
TheVlad
5 / 5 / 1
Регистрация: 24.10.2012
Сообщений: 102
06.01.2013, 18:21     Как выводить русский текст? #9
Цитата Сообщение от Evgeni pengwin Посмотреть сообщение
int main () {
setlocale(LC_ALL "rus");
int choice; do { choice = menu(); //получаем команду выбранную пользователем.
вот так
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11817 / 6796 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
06.01.2013, 18:23     Как выводить русский текст? #10
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#include <windows.h>
 
int main(){
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    std::cout<<"Я программа! И вывожу русский текст! Если нет, то поменяй шрифт на Lucida Console";
    std::cin.get();
    return 0;
}
TheVlad
5 / 5 / 1
Регистрация: 24.10.2012
Сообщений: 102
06.01.2013, 18:25     Как выводить русский текст? #11
если русский текст не только в main() то и в начале остальных функций тоже впиши setlocale(LC_ALL "rus" );

Добавлено через 1 минуту
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//простая программа ведения базы данных служащих.
#include <iostream>
#include <cstdlib>
using namespace std;
 
char name [10] [80]; //массив имен служащих.
char pfone [10] [20]; //массив телефонов служащих
float hours [10]; //массив часов отработанных за неделю
float wage [10]; //массив окладов
int menu ();
void enter(), report();
int main () 
{
    setlocale(LC_ALL, "rus" );
    int choice;
    do {
        choice = menu(); //получаем команду выбранную пользователем.
        switch (choice){
        case 0: break;
        case 1: enter();
            break;
        case 2: report();
            break;
        default: cout << "попробуйте снова\n\n";
        }
    } while (choice != 0);
    return 0;
}
//функция возвращает команду выбранную пользователем.
int menu()
{
    setlocale(LC_ALL, "rus" );
int choice;
cout << "0. Выход из программы\n";
    cout << "1. Ввод информации\n";
    cout << "2. генерирование отчета\n";
    cout << "\nВыберите команду: ";
    cin >> choice;
    return choice;
}
//Функция ввоа информации в базу данных.
void enter ()
{ 
    setlocale(LC_ALL, "rus" );
    int i;
    char temp [80];
    for (i=0; i<10; i++) {
        cout << "Введите фамилию: ";
        cin >> name [i];
        cout << "Введите номер телефона: ";
        cin >> pfone [i];
        cout << "Введите количество отработанных часов: ";
        cin >> hours [i];
        cout << "Введите оклад: ";
        cin >> wage[i];
    }
}
//отображение отчета
void report()
{
    setlocale(LC_ALL, "rus" );
    int i;
    for (i=0; i<10; i++){
        cout << name [i] << ' ' << pfone[i] << '\n';
        cout << "Заработная плата за неделю: "
        << wage [i] * hours [i];
        cout << '\n';
    }
}
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11817 / 6796 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
06.01.2013, 18:27     Как выводить русский текст? #12
Цитата Сообщение от TheVlad Посмотреть сообщение
если русский текст не только в main() то и в начале остальных функций тоже впиши setlocale(LC_ALL "rus" );
локаль устанавливается для консоли, а не для функции
m4r1kk
2 / 2 / 0
Регистрация: 12.10.2012
Сообщений: 43
06.01.2013, 18:28     Как выводить русский текст? #13
Может глупо... Вообщем скачай Dev-C++, вот ссылка - http://sourceforge.net/projects/dev-...e_mirror=sunet а потом следуя этой инструкции установи русский компилятор - http://kpolyakov.narod.ru/school/c/faq.htm#rus, у меня работает...
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11817 / 6796 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
06.01.2013, 18:29     Как выводить русский текст? #14
ЛОКАЛИЗАЦИЯ КОНСОЛЬНЫХ ПРИЛОЖЕНИЙ В ЯЗЫКЕ C++
Советую почитать. Там есть ответы на многие Ваши вопросы
TheVlad
5 / 5 / 1
Регистрация: 24.10.2012
Сообщений: 102
06.01.2013, 18:34     Как выводить русский текст? #15
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
//простая программа ведения базы данных служащих.
#include <iostream>
#include <cstdlib>
using namespace std;
 
char name [10] [80]; //массив имен служащих.
char pfone [10] [20]; //массив телефонов служащих
float hours [10]; //массив часов отработанных за неделю
float wage [10]; //массив окладов
int menu ();
void enter(), report();
int main () 
{
    setlocale(LC_ALL, "rus" );
    int choice;
    do {
        choice = menu(); //получаем команду выбранную пользователем.
        switch (choice){
        case 0: break;
        case 1: enter();
            break;
        case 2: report();
            break;
        default: cout << "попробуйте снова\n\n";
        }
    } while (choice != 0);
    return 0;
}
//функция возвращает команду выбранную пользователем.
int menu()
{
    setlocale(LC_ALL, "rus" );
int choice;
cout << "0. Выход из программы\n";
    cout << "1. Ввод информации\n";
    cout << "2. генерирование отчета\n";
    cout << "\nВыберите команду: ";
    cin >> choice;
    return choice;
}
//Функция ввоа информации в базу данных.
void enter ()
{ 
    setlocale(LC_ALL, "rus" );
    int i;
    char temp [80];
    for (i=0; i<10; i++) {
        cout << "Введите фамилию: ";
        cin >> name [i];
        cout << "Введите номер телефона: ";
        cin >> pfone [i];
        cout << "Введите количество отработанных часов: ";
        cin >> hours [i];
        cout << "Введите оклад: ";
        cin >> wage[i];
    }
}
//отображение отчета
void report()
{
    setlocale(LC_ALL, "rus" );
    int i;
    for (i=0; i<10; i++){
        cout << name [i] << ' ' << pfone[i] << '\n';
        cout << "Заработная плата за неделю: "
        << wage [i] * hours [i];
        cout << '\n';
    }
}
работает и хорошо =)
Миниатюры
Как выводить русский текст?  
Evgeni pengwin
 Аватар для Evgeni pengwin
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 20
06.01.2013, 18:36  [ТС]     Как выводить русский текст? #16
а как шрифт в консоли сменить ?
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11817 / 6796 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
06.01.2013, 18:39     Как выводить русский текст? #17
Цитата Сообщение от Evgeni pengwin Посмотреть сообщение
а как шрифт в консоли сменить ?
ПКМ на заголовке консоли->Свойства. Там увидите

Добавлено через 37 секунд
А вообще то вот: Русские шрифты в консоли
David Sylva
 Аватар для David Sylva
1280 / 942 / 51
Регистрация: 17.05.2012
Сообщений: 2,686
06.01.2013, 18:41     Как выводить русский текст? #18
На консоли вверху, правой кнопкой мыши, там будут свойства.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.01.2013, 18:41     Как выводить русский текст?
Еще ссылки по теме:

C++ Как передать в функцию русский текст
C++ Как заменить русский текст в файле?
Как записать русский текст в файл? C++

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

Или воспользуйтесь поиском по форуму:
Evgeni pengwin
 Аватар для Evgeni pengwin
0 / 0 / 0
Регистрация: 27.12.2012
Сообщений: 20
06.01.2013, 18:41  [ТС]     Как выводить русский текст? #19
Цитата Сообщение от TheVlad Посмотреть сообщение
работает и хорошо =)
И правда работает, все спасибо вроде всем расставил выручили спасибо еще раз.
Yandex
Объявления
06.01.2013, 18:41     Как выводить русский текст?
Ответ Создать тему
Опции темы

Текущее время: 08:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru