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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.64
ququ_smile
1 / 1 / 0
Регистрация: 28.01.2013
Сообщений: 155
#1

Русский текст в консоли - C++

19.07.2013, 19:00. Просмотров 1487. Ответов 29
Метки нет (Все метки)

Проблема банальная - русский текст в консоли. До конца в кодировках я так и не разобрался, поэтому прошу помощи. Я нашел 3 способа как решить эту проблему :
1) setlocale( LC_ALL,"Russian" ) // Как я понял она просто меняет кодировку консоли.Где-то читал что на XP у неё проблемы. У меня XP SP2 и среда code blocks. В общем она не пашет у меня.
2)CharToOem() // Как я понял преобразует строку в ОЕМ набор символов. Почему-то раньше эта функция работала без проблем, а теперь на отказ... вот я приведу пример функции, которая должна преобразовывать текст в ОЕМ и выводит строку на экран:
C++
1
2
3
4
5
6
void rcout(char *str)
{
    char message[100];
    CharToOem(str,message);
    std::cout<<message;
}
3) SetConsoleCP(1251);
SetConsoleOutputCP(1251);
В этом случае я просто нашел эти функции (которые так же не работают). Я понял, что эти функции что-то делают с кодировкой в консоли, но так и не понял как. Может кто-нибудь наглядно объяснить что они делают?

Кто знает в чем может быть проблема таких бед?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.07.2013, 19:00     Русский текст в консоли
Посмотрите здесь:

Русский текст в консоли (не одно и то же) - C++
Здравствуйте. В прикрепленной выше темке нашел вот такую программу: #include&lt;iostream.h&gt; #include&lt;cmath&gt; #include&lt;windows.h&gt; ...

Рисование ASCII кодами и русский текст в консоли - C++
Всем добрый вечер. И вот такой вопрос есть. Сначала печатаю в консоли текст а под ним горизонтальную линию. Только вместо линии...

Как с консоли записать в файл русский текст - C++
Как с консоли записать в файл русский текст? Если так, то пишется только английский: #include &lt;iostream&gt; using namespace std; ...

Русский язык в консоли - C++
Допустим вот код cout &lt;&lt; &quot;Помогите пожалуйста!&quot;; Пробовал и setlocale и &lt;windows.h&gt;. Проблема в том что вместо русских букв он...

Русский язык в консоли - C++
Здраствуйте, у меня такой вот вопрос: Почему когда я пишу текст на русском языке в программе C++ Builder 2009, то в моей программе вместо...

Русский шрифт в консоли - C++
Как подключить русский шрифт в консоли?

Кривой русский в консоли отладчика - C++
Создаю приложение c формой, но при компиляции почему то выдает не корректные сообщения об ошибках: 1&gt;MyForm.obj : error LNK2028:...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.07.2013, 19:55     Русский текст в консоли #21
Цитата Сообщение от ququ_smile Посмотреть сообщение
Вы это имели в виду?
Это откуда?
ququ_smile
1 / 1 / 0
Регистрация: 28.01.2013
Сообщений: 155
19.07.2013, 20:02  [ТС]     Русский текст в консоли #22
Цитата Сообщение от alsav22 Посмотреть сообщение
Это откуда?
Просто сделал в другом исходном файле. В моем текущем всё так же. Эм и еще, в этом новом файле я попробовал повторить то, что вы мне сказали и там, почему-то, все работает...
Миниатюры
Русский текст в консоли  
Belfegor
Ghost
172 / 172 / 6
Регистрация: 16.09.2012
Сообщений: 524
19.07.2013, 20:05     Русский текст в консоли #23
кодировка исходника должна быть такой же, как и в консоли.
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.07.2013, 20:09     Русский текст в консоли #24
Цитата Сообщение от ququ_smile Посмотреть сообщение
В моем текущем всё так же.
Что-то там не так делали. Я смотрю скрин (8 пост), в окне программы путь один прописан, а настройки шрифта вы в каком-то непоятном окне делаете.

Добавлено через 1 минуту
Вы как в проект файлы добавляете?
ququ_smile
1 / 1 / 0
Регистрация: 28.01.2013
Сообщений: 155
19.07.2013, 20:09  [ТС]     Русский текст в консоли #25
Ладно, похоже в новом проекте ваш совет работает правильно. А от старого мне придется хладнокровно избавиться ( хотя с ним связано так много воспоминаний : С ). В любом случае спасибо за потраченное время и усилия!
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.07.2013, 20:09     Русский текст в консоли #26
Цитата Сообщение от ququ_smile Посмотреть сообщение
Просто сделал в другом исходном файле.
Это как? В другом проекте?
ququ_smile
1 / 1 / 0
Регистрация: 28.01.2013
Сообщений: 155
19.07.2013, 20:11  [ТС]     Русский текст в консоли #27
Да_
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.07.2013, 20:12     Русский текст в консоли #28
Цитата Сообщение от ququ_smile Посмотреть сообщение
А от старого мне придется хладнокровно избавиться
Может нужно было очистить и перестроить. Бывает помогает.
ququ_smile
1 / 1 / 0
Регистрация: 28.01.2013
Сообщений: 155
19.07.2013, 20:16  [ТС]     Русский текст в консоли #29
Я очистил, только папку с этим проектом

Добавлено через 2 минуты
Кстати, а если выполнить эту программу на компьютере, где шрифт в консоли будет другим, то опять будут крякозябры?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.07.2013, 20:21     Русский текст в консоли
Еще ссылки по теме:

Кроссплатформенный русский шрифт консоли - C++
Вы скажите, что такая тема и вы будите правы... Но у меня дело со всем в другом. Я делаю шрифт в консоле русским, и компилирую свою...

и опять русский шрифт в консоли - C++
создал файл russian.h запихал в него следующее #include &lt;iostream&gt; #include &lt;windows.h&gt; char* Rus(const char* text); char...

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

Не показывает русский язык при выводе в консоли - C++
Добрый день. Подскажите вроде бы подключил русский язык, но при выводе в консоли строки введенной из клавиатуры, вместо русского языка...

Указатель и снова про русский язык в консоли - C++
Здравствуйте.Указатель не возвращает русские буквы. Пишу что то на русском, возвращает набор символов, на анг все норм. Как можно...


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

Или воспользуйтесь поиском по форуму:
alsav22
5416 / 4812 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
19.07.2013, 20:21     Русский текст в консоли #30
У себя уберите шрифт и увидите. Кодировки - это больная тема.
Yandex
Объявления
19.07.2013, 20:21     Русский текст в консоли
Ответ Создать тему
Опции темы

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