Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.67
outoftime
║XLR8║
511 / 433 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
#1

Русик консоли - C++

12.02.2010, 21:06. Просмотров 1951. Ответов 38
Метки нет (Все метки)

Я конешно понимаю что поднимаю эту тему тысячный раз, но все таки:
пишу на wxDev-C++ для русификации код:
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <locale.h>
 
using namespace std;
 
int main()
{
    setlocale (LC_ALL,"Russian");
    cout << "Привет мир!" << endl;
    system("pause");
}
Дело в том, что мне как-бы курсач надо русифицыровать, а то преподы обижаются, что они мол аглицкого не знают..
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.02.2010, 21:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Русик консоли (C++):

Клавиши F1-F12 в консоли, и работа с мышкой в консоли - C++
Я искал на сайте, но не нашел упоминания о том как обрабатывать и или узнавать где находится курсор мышки (и еще мне надо бы узнать нажатие...

считывание с консоли ( не с клавы, а именно с консоли) - C++
нужно написать функцию которая возвращает string в котором написано 500 символов которые были выведены в консоли от начала. среда :...

Меню на консоли - C++
Здравствуйте! Изучаю C++, для практики ради делаю консольное меню через класс. Может быть мне, пока что, ещё далеко до претендента на...

Анимация в консоли - C++
Как вы делаете анимацию в консоли? Я просто очищал екран вызывал метод который выводил все на екран но оно начиет мигать и как-то не...

Убрать _ в консоли - C++
Можно ли скрыть мигающий элемент?

Строка в консоли - C++
Что сделать что бы в консоли, когда выводиться строка, были не крякозябры, а нормальный текст? Русский текст.

38
yamilramilev
265 / 257 / 9
Регистрация: 08.10.2009
Сообщений: 554
12.02.2010, 21:34 #2
Вот смотри
0
VAN32
27 / 27 / 2
Регистрация: 18.11.2009
Сообщений: 92
12.02.2010, 21:45 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <conio.h>
#include <stdio.h>
#include <windows.h>
#include <iostream.h>
 
using namespace std;
 
int main (int argc, char *argv[])
{
  char a[]="Baш тeкcт";
  CharToOem(a,a);
 
  cout << a;
  getch();
  return 0;
}
1
Menificar
1 / 1 / 0
Регистрация: 10.02.2010
Сообщений: 5
12.02.2010, 21:57 #4
Или пиши в кодировке CP866(QT Creator например понимает эту кодировку) что наиболее удобно как мне кажется....
0
darkAngel
Технофашист
217 / 200 / 4
Регистрация: 11.03.2009
Сообщений: 883
12.02.2010, 22:45 #5
а можешь файлик подключить вот такой:
C++
1
2
3
4
5
6
7
8
//---Функция правильного отображения русских символов в console-приложениях--
char* Rus(char* mes){
 for(i=0;i<strlen(mes);i++){
  if (mes[i]>='А' && mes[i]<='п') mes[i]=char(int(mes[i])-64);
  if (mes[i]>='р' && mes[i]<='я') mes[i]=char(int(mes[i])-16);}
 return mes; //signed long int
}
//---------------------------------------------------------------------------
Я на первом курсе делал, когда не знал как руссифицировать консольку )

Добавлено через 1 минуту
ах да, только придётся вызывать эту функцию постоянно. ну типо так:
Rus("ПРИВЕТИК МИР!");
0
outoftime
║XLR8║
511 / 433 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
12.02.2010, 23:44  [ТС] #6
Всем спасибо, но помог реально только VAN32.

Добавлено через 1 минуту
я остановился на:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
#include <windows.h>
 
using namespace std;
 
char *Rus(char *text)
{
    char *buf = new char[100];
    CharToOem(text, buf);
    return buf;
}
 
int main()
{
    char *s;
    s = Rus("Привет мир!");
    printf("%s\n", s);
    system("pause");
}
Добавлено через 1 минуту
вот только мне это не нравится тем, что место под стоку не освобождается..
0
VAN32
27 / 27 / 2
Регистрация: 18.11.2009
Сообщений: 92
13.02.2010, 09:47 #7
Цитата Сообщение от outoftime Посмотреть сообщение
Всем спасибо, но помог реально только VAN32.

Добавлено через 1 минуту
я остановился на:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <string>
#include <windows.h>
 
using namespace std;
 
char *Rus(char *text)
{
    char *buf = new char[100];
    CharToOem(text, buf);
    return buf;
}
 
int main()
{
    char *s;
    s = Rus("Привет мир!");
    printf("%s\n", s);
    system("pause");
}
Добавлено через 1 минуту
вот только мне это не нравится тем, что место под стоку не освобождается..
А так
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <conio.h>
#include <windows.h>
#include <iostream.h>
 
char buff[256];
char* Rus(const char *str)
{
    CharToOem(str,buff);
    return buff;
}
 
int main (int argc, char *argv[])
{
  cout << Rus("Baш тeкcт");
  getch();
  return 0;
}
1
ZigaZaga
0 / 0 / 0
Регистрация: 06.01.2010
Сообщений: 20
13.02.2010, 12:35 #8
а так:
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
#icnlude <windows.h>
 
void main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
 
    std::cout << "Зига Зага" ;
}
НО надо ещё в умолчаниях консольки поменять шрифт на ЛЮСИДА.
0
outoftime
║XLR8║
511 / 433 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
13.02.2010, 16:57  [ТС] #9
ZigaZaga, не пашет
жаль конечно, но пришлось мораться и все строки отдельно переводить и выводить..
0
ZigaZaga
0 / 0 / 0
Регистрация: 06.01.2010
Сообщений: 20
13.02.2010, 17:01 #10
на самом деле это точно пашет в вижл студиях... как в других - понятия не имею))
думал может поможет.
0
cibertronic
256 / 143 / 13
Регистрация: 27.12.2009
Сообщений: 908
13.02.2010, 17:12 #11
я ваще не парюсь, а пишу
C++
1
system("echo ваш русский текст какой хоите");
а такой код пишет взаголовке название
C++
1
system("title моя прогищЯ");
но тут тоже следует учесть что это для виндовс будет понятно точно....как с другими ОС будет работать не знаю. собственно это код для командной строки, может и будет в других....
кому интересно поищите в гугле создание *.bat *.cmd ))
1
outoftime
║XLR8║
511 / 433 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
13.02.2010, 17:20  [ТС] #12
ZigaZaga, Visual Studio 2008 Express Edition - не пашет
0
cibertronic
256 / 143 / 13
Регистрация: 27.12.2009
Сообщений: 908
13.02.2010, 17:28 #13
ну как? работает же? )
0
ZigaZaga
0 / 0 / 0
Регистрация: 06.01.2010
Сообщений: 20
13.02.2010, 17:33 #14
outoftime , у меня это пашет в MSVC 6.0 и MSVC 2008 Professional Edition..
0
outoftime
║XLR8║
511 / 433 / 33
Регистрация: 25.07.2009
Сообщений: 2,295
13.02.2010, 17:38  [ТС] #15
мне грубо говоря на борладн си++ 3.1 надо))
но так как у меня вышло прогрузить препода юзать wxDev-C++ то надо его юзать, кстати компалятор MinGW
0
13.02.2010, 17:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.02.2010, 17:38
Привет! Вот еще темы с ответами:

Меню в консоли - C++
Меня интересует вот что: зачем в функции int menu(); вот это условие code=getch(); if (code==224) ...

Кириллица в консоли - C++
Знаю что вопрос уже не раз задавали, но там люди программировали в какой-либо из IDE. Я же программирую на Windows в MinGW(эмулятор g++,...

Вывод в консоли - C++
//12.cpp #include &lt;iostream&gt; #include &lt;iomanip&gt; using namespace std; void starline(); ...

Создание консоли - C++
Хочу сделать командную строку на основе стандартной, вот код, но никак не пойму как заставить работать команду cd. int main() { ...


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

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

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