Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/26: Рейтинг темы: голосов - 26, средняя оценка - 4.96
232 / 232 / 69
Регистрация: 30.09.2012
Сообщений: 545
1

Вывод русского текста в консоли

04.01.2013, 14:34. Показов 5300. Ответов 9
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Доброго времени суток.Помогите пожалуйста в таком вопросе.Вот простенькая программа,которой нужно ввести имя,а она выведет Привет,введеное имя. Но проблема в том,что благодаря использваванию setlocale(LC_ALL, "Russian"); или же setlocale(0, ""); вместо того введенного имени выводяться кракозябры...Как сделать так,чтобы выводился нормальный русский текст? У меня Вижуал Студио 2012,винда 7, 64 бит

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# include <iostream>
# include <string>
# include <vector>
# include <algorithm>
# include <cmath>
using namespace std;
int main()
{
    setlocale(LC_ALL, "Russian");
    string name;
    cout << "Введите имя адресата" << endl ;
    cin >> name;
    cout << "Привет," << name << endl;
    system ("pause");
    return 0;
 
}
Миниатюры
Вывод русского текста в консоли  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.01.2013, 14:34
Ответы с готовыми решениями:

Вывод русского текста в консоли
Ребят для курсового проекта требуется реализовать ввод русских букв, сколько уже не мучался с этим...

Вывод русского текста на экран в консоли
Столкнулся с такой проблемой. На экран консоли выводит краказябры. Что делать??? Вот код программы:...

Ввод в файл с консоли русского текста
Есть ф-ия, для добавления студентиов в базу. На английском вводит номрально, а на русском к...

Вместо русского текста в коде иероглифы (не в консоли)
Почему-то русский текст пропал, сначала все было на русском и комментарии и остальное, потом стало...

9
0 / 0 / 0
Регистрация: 27.11.2012
Сообщений: 17
04.01.2013, 14:43 2
А обязательно нужен setlocale, я пользуюсь system("chcp 1251")?
0
Обитатель форума
201 / 184 / 54
Регистрация: 28.10.2012
Сообщений: 543
04.01.2013, 14:45 3
Поможет.

C++
1
2
3
4
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
1
232 / 232 / 69
Регистрация: 30.09.2012
Сообщений: 545
04.01.2013, 15:08  [ТС] 4
Цитата Сообщение от Afflicted Посмотреть сообщение
Поможет.

C++
1
2
3
4
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);



Благодарю,помогло,сначала не помогло конечно,но подключил еще # include <windows.h> и в строке выставил шрифт Lucida Console и все отлично работает.Благодарю!
0
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
04.01.2013, 15:44 5
Чтобы постоянно не менять шрифт в консоли, есть еще один вариант. Надо убрать setlocale, а вместо типа char использовать wchar_t, и соответственно вместо cin и cout использовать wcin и wcout. Также есть куча аналогов функций, которые работают с char, для wchar_t.
0
погромист
 Аватар для coloc
415 / 251 / 30
Регистрация: 27.08.2012
Сообщений: 550
04.01.2013, 15:48 6
nonedark2008, а постоянно шрифт в консоли и не нужно менять. Можно просто по умолчанию поставить нужный шрифт
0
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
04.01.2013, 15:50 7
coloc, но если программу перетащить на другой компьютер, то там тоже придется менять, что не хорошо >_>
0
погромист
 Аватар для coloc
415 / 251 / 30
Регистрация: 27.08.2012
Сообщений: 550
04.01.2013, 16:03 8
nonedark2008, я не думаю, что эти танцы с бубнами типа wchar_t легче, чем пару кликов мышкою на окне с консолью. Тем более зачем кому то перетащивать свои программы на чужой компьютер? Чтобы похвастаться какой супер инновационный морской бой?
0
1394 / 1023 / 325
Регистрация: 28.07.2012
Сообщений: 2,813
04.01.2013, 16:19 9
Цитата Сообщение от coloc Посмотреть сообщение
Тем более зачем кому то перетащивать свои программы на чужой компьютер?
Ну, например многим для сдачи задания - требуется его отослать преподу на почту. Неужто к письмо придется приписывать, что для нормальной работы программы требуется зайти туда-то, поменять что-то на что-то там и только потом уже запускать программу???
0
Неэпический
 Аватар для Croessmah
18116 / 10702 / 2063
Регистрация: 27.09.2012
Сообщений: 26,957
Записей в блоге: 1
05.01.2013, 09:34 10
Цитата Сообщение от nonedark2008 Посмотреть сообщение
но если программу перетащить на другой компьютер, то там тоже придется менять, что не хорошо
Кто мешает программно поменять шрифт?
Цитата Сообщение от nonedark2008 Посмотреть сообщение
Ну, например многим для сдачи задания - требуется его отослать преподу на почту.
Ну если препод не идиот, то всё будет нормально.
А если уж переходить на Юникод, то и консоль загоняйте под UTF-8.
0
05.01.2013, 09:34
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.01.2013, 09:34
Помогаю со студенческими работами здесь

Вывод русского языка в консоли
Доброго времени суток, коллеги! Столкнулся с проблемой при написании простенькой программы...

Вывод русского текста
Привет, я тут упражнение из книжки делаю. Там класс с переменными, содержащими имя (тип string) и...

Неправильное отображение русского текста в консоли при использовании setlocale(LC_ALL, "Russian")
Ребят, такая ситуация, прописал setlocale(LC_ALL, &quot;Russian&quot;);но в консоли вместо текста на...

Вывод текста в поток консоли
Помогите найти функцию для вывода текста в поток консоли помню что она принимает stdout и char*...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
КуМир, исполнитель Чертежник: Решение задач
bytestream 28.01.2025
КуМир — это образовательная среда для обучения программированию. Она предлагает пользователям разнообразные инструменты для разработки и отладки программ, что особенно ценно для студентов и. . .
Rust или Go? А может C++?
hw_wired 28.01.2025
С каждой новой технологией или методологией появляются новые языки программирования, призванные решать конкретные задачи либо улучшать аспекты производительности и безопасности. Среди множества. . .
Fortran и WinAPI: как создать приложение с графическим интерфейсом
hw_wired 28.01.2025
Fortran — это один из старейших высокоуровневых языков программирования, широко используемый в науке и инженерии уже несколько десятилетий. Его название происходит от "Formula Translation" (перевод. . .
Списки в Haskell
hw_wired 28.01.2025
Haskell является функциональным языком программирования, который отличается лаконичностью синтаксиса и мощными абстракциями. Важным концептом в Haskell являются списки — упорядоченные коллекции. . .
Функции высшего порядка в Haskell
hw_wired 28.01.2025
Haskell – это современный функциональный язык программирования, который получил широкое распространение благодаря своей выразительности и мощным абстракциям. Одной из ключевых особенностей Haskell. . .
Как в цикле обойти все поля объекта в JavaScript
bytestream 28.01.2025
Объекты в JavaScript представляют собой фундаментальные структуры данных, которые позволяют хранить и организовывать связанную информацию в виде пар ключ-значение. Каждый объект можно представить как. . .
Как выбрать строки в DataFrame по значению столбца в Pandas
bytestream 28.01.2025
В области анализа данных библиотека Pandas стала незаменимым инструментом для работы с табличными данными в Python. Эта мощная библиотека предоставляет множество функций для эффективной обработки и. . .
Как сделать перенос строки в Bash
bytestream 28.01.2025
При работе с командной оболочкой Bash разработчики часто сталкиваются с необходимостью форматирования текстового вывода, где ключевую роль играет правильное управление переносами строк. Умение. . .
Поиск подстроки в строке с помощью Bash
bytestream 28.01.2025
Поиск подстроки в строке является одной из важных задач в программировании и обработке текстов. Применение такого поиска можно найти в самых разных областях, от анализа данных до разработки. . .
[golang] 169. Majority Element
alhaos 28.01.2025
Тут надо вернуть "мажористый" элемент который встречается в слайсе больше чем в половине случаев. По условиям задачи во входных данных такой элемент обязан присутствовать. / / . . .
Когда лучше использовать LinkedList вместо ArrayList в Java
bytestream 28.01.2025
При разработке Java-приложений выбор правильной структуры данных играет ключевую роль в обеспечении эффективности и производительности программы. ArrayList и LinkedList являются двумя. . .
Какой ответ HTTP лучше использовать: 403 Forbidden или 401 Unauthorized, когда недостаточно прав
bytestream 28.01.2025
В современной веб-разработке правильная обработка ошибок и точное информирование клиентов о статусе их запросов играют критическую роль в создании надежных и безопасных приложений. Особое внимание. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru