Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Care
77 / 33 / 9
Регистрация: 04.06.2013
Сообщений: 295
#1

Кодировка VS или конслоь - C++

23.07.2013, 21:23. Просмотров 1809. Ответов 42
Метки нет (Все метки)

Собственно тока вчера написал "Hello,World !" на с++.
Терь по книжке пошли задания , но появилась проблема с кодировкой!
Пытаюсь вывести сообщение в консоль , а появляются кроказябры...
PS Среда VS2010 , кодеровка в консоле cp1251
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.07.2013, 21:23
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Кодировка VS или конслоь (C++):

Кодировка, или интерпретатор
Здравствуйте, сегодня решил начать учить PHP, как обычно начал с низов, но сразу возникла проблема на счет вывода результата на странице...

Кодировка в Dreamweaver, или вопросы новчика
Приветствую всех! Возникла такая проблема при попытке редактирования джумловских шаблонов http://pikucha.ru/287865 как исправить, что...

Кодировка UTF-8 или Win-1251?
В коде скрипта указано <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <!--windows-1251--> ...

Кодировка UTF-8 - с ВОМ или без?
Работал с Си-проектом, дошедшим из глубины веков. В нем использовалась кодировка Wymdows-1251 или какая-то подобная. При попытке открыть...

Резалт сет или кодировка. что не так
Ребят.... не получается у меня дернуть информацию содержащую русские символы! В чем дело!? Вот реализация подключения: public class...

Неизвестная кодировка или я не знаю что это)
Задача - получить исходный код плагина на PHP. Плагин рабочий и запускается без ошибок, а вот исходный код в нормальном я получить никак не...

42
Даниил
68 / 41 / 1
Регистрация: 14.05.2013
Сообщений: 383
23.07.2013, 21:30 #2
Пиши на английском, вот в Линуксе таких проблем нету, а в винде это проблема скорее всего ни с студией, а с кодировкой консоли
Я и сам отказался от русского, та же проблема

Добавлено через 1 минуту
Ну а вообще есть пару способов:
C++
1
setlocale (0,"");
и подключить библиотеку clocale (или locale.h, не помню)
C++
1
setlocale (LC_TYPE, "rus"
C++
1
setlocale (LC_TYPE, "Russian"
Добавлено через 48 секунд
Была ещё штука с Dev C++, сам ей пользовался, там был типа русификатор, заменялось пару файлов в компиляторе и потом пишешь на русском спокойно, при компиляции всё само настраивается

Добавлено через 2 минуты
Ещё можно что-то с CharToOem мутить, но о этом я смутно знаю
1
Thinker
Эксперт С++
4232 / 2206 / 203
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
23.07.2013, 21:31 #3
Русские шрифты в консоли
2
Даниил
23.07.2013, 21:31
  #4

Не по теме:

Я от + тоже не откажусь

1
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.07.2013, 21:34 #5
Цитата Сообщение от Care Посмотреть сообщение
кодеровка в консоле cp1251
В том то и дело, что не 1251.
Чтобы был и ввод и вывод:
C++
1
2
3
4
5
6
7
8
#include <windows.h>
 
int main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  ...
}
В свойствах консоли выбрать шрифт: Lucida Console. Установка шрифта Lucida Console
2
Care
77 / 33 / 9
Регистрация: 04.06.2013
Сообщений: 295
23.07.2013, 21:39  [ТС] #6
Цитата Сообщение от alsav22 Посмотреть сообщение
В том то и дело, что не 1251.
Чтобы был и ввод и вывод:
C++
1
2
3
4
5
6
7
8
#include <windows.h>
 
int main()
{
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  ...
}
В свойствах консоли выбрать шрифт: Lucida Console. Установка шрифта Lucida Console
Кодеровка 100% cp1251 сам настраивал в реестре ОС

Добавлено через 55 секунд
Сам пишу на Java , и проблем с выводом в консоль не наблюдаю !
0
Даниил
68 / 41 / 1
Регистрация: 14.05.2013
Сообщений: 383
23.07.2013, 21:40 #7
Цитата Сообщение от Care Посмотреть сообщение
Кодеровка 100% cp1251 сам настраивал в реестре ОС

Добавлено через 55 секунд
Сам пишу на Java , и проблем с выводом в консоль не наблюдаю !
Повторюсь:
Русский это зло)В консоли по крайней мере..
К чему эти извращения с ЯП?Пиши на англ и не парься
0
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.07.2013, 21:40 #8
Цитата Сообщение от Care Посмотреть сообщение
Кодеровка 100% cp1251 сам настраивал в реестре ОС
Ключевое слово - ОС. В ОС одна кодировка (1251), а в консоли другая (866). Иначе этого бы не было:
Цитата Сообщение от Care Посмотреть сообщение
Пытаюсь вывести сообщение в консоль , а появляются кроказябры...
1
Даниил
68 / 41 / 1
Регистрация: 14.05.2013
Сообщений: 383
23.07.2013, 21:44 #9
alsav22, Правильно Я когда работал с Code Blocks (или Dev C++, не могу вспомнить) то там ещё можно было в настройках IDE устанавливать кодировку консоли Хотя не понимаю зачем это нужно, подозреваю что это ничего не даёт..)

Добавлено через 1 минуту

Не по теме:

Всем спокойной ночи

1
Care
77 / 33 / 9
Регистрация: 04.06.2013
Сообщений: 295
23.07.2013, 21:45  [ТС] #10
Цитата Сообщение от Даниил1991 Посмотреть сообщение
Повторюсь:
Русский это зло)В консоли по крайней мере..
К чему эти извращения с ЯП?Пиши на англ и не парься
Ну пришлось так сделать )
0
Даниил
68 / 41 / 1
Регистрация: 14.05.2013
Сообщений: 383
23.07.2013, 21:46 #11
Молодец)
Кстати, спасибо за +
0
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.07.2013, 21:46 #12
Цитата Сообщение от Даниил1991 Посмотреть сообщение
Я когда работал с Code Blocks (или Dev C++, не могу вспомнить) то там ещё можно было в настройках IDE устанавливать кодировку консоли
Это кодировка не консоли.
0
Care
77 / 33 / 9
Регистрация: 04.06.2013
Сообщений: 295
23.07.2013, 21:46  [ТС] #13
Цитата Сообщение от alsav22 Посмотреть сообщение
Ключевое слово - ОС. В ОС одна кодировка (1251), а в консоли другая (866). Иначе этого бы не было:
Я поставил кодеровку для консоли по умолчанию cp1251... Хотя мб кто то её там поменял ...)
0
Даниил
68 / 41 / 1
Регистрация: 14.05.2013
Сообщений: 383
23.07.2013, 21:48 #14
Цитата Сообщение от alsav22 Посмотреть сообщение
Это кодировка не консоли.
Угу, скорее всего так

Добавлено через 1 минуту
Цитата Сообщение от Care Посмотреть сообщение
Я поставил кодеровку для консоли по умолчанию cp1251... Хотя мб кто то её там поменял ...)
Кстати, можешь поставить себе Линукс Ubuntu хороший, Mint, LTS (про LTS точно не помню, может по другому чуть называется)..

Добавлено через 11 секунд
И проблема эта пропадёт
0
Care
77 / 33 / 9
Регистрация: 04.06.2013
Сообщений: 295
23.07.2013, 22:02  [ТС] #15
Были траблы с кодеровкой в Java ... зашел по HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage в реестр и изменил OEMCP с 866 на 1251 (давно было) ща тоже самое стоит. На Java все робит ... Лана разберусь ) Спасибо всем)

Добавлено через 8 минут
кстати с этими операторами SetConsoleCP(1251);
SetConsoleOutputCP(1251); всё ровно краказябры показывает
0
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.07.2013, 22:10 #16
Цитата Сообщение от Care Посмотреть сообщение
SetConsoleOutputCP(1251); всё ровно краказябры показывает
Шрифт установили?
Цитата Сообщение от alsav22 Посмотреть сообщение
В свойствах консоли выбрать шрифт: Lucida Console.
Без этого не будет работать.
0
OhMyGodSoLong
23.07.2013, 22:11
  #17

Не по теме:

Обожаю *NIX и их решение повсеместно принять UTF-8 для совместимости.

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

0
Care
77 / 33 / 9
Регистрация: 04.06.2013
Сообщений: 295
23.07.2013, 22:11  [ТС] #18
Цитата Сообщение от alsav22 Посмотреть сообщение
Шрифт установили?
Без этого не будет работать.
Lucida Console стоит
0
alsav22
5438 / 4833 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
23.07.2013, 22:16 #19
Тогда не знаю. У всех работает.

Добавлено через 1 минуту
И это не работает (на вывод)?
C++
1
setlocale (0,"");
0
Care
77 / 33 / 9
Регистрация: 04.06.2013
Сообщений: 295
23.07.2013, 22:24  [ТС] #20
Цитата Сообщение от alsav22 Посмотреть сообщение
Тогда не знаю. У всех работает.

Добавлено через 1 минуту
И это не работает (на вывод)?
C++
1
setlocale (0,"");
Неа...
Есть подозрение что в этом виноват Visual Studio... в какой он кодировке работает по умолчанию?

Добавлено через 3 минуты
Цитата Сообщение от Care Посмотреть сообщение
Неа...
Есть подозрение что в этом виноват Visual Studio... в какой он кодировке работает по умолчанию?
Точнее в какой кодировке он хранит текст программы?
0
23.07.2013, 22:24
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.07.2013, 22:24
Привет! Вот еще темы с решениями:

Знающие подскажите что за шифрование или кодировка
\u12e8\u12f5\u121d\u133d \u1325\u12eb\u1244 Вот пример.

Не работает регистрация с айфонов или кодировка кириллицы в iOS
Есть форма здесь На ней аналог формы регистрации, которая закрытая: сравниваются данные пользователя с базой, если они совпадают, то...

HomeLisp - кодировка или что это? как исправить?
http://homelisp.ru/help/exe.html - следовал по этой статье. Результатом статьи было вот такое вот окошко: Как должно быть. ...

лажает многопоточность, кривая кодировка или кривые руки ?
Здравствуйте! Столкнулся с тем, что в самопальном скрипте (моем) происходит какая-то хрень, а именно: При попытке запуска скрипта из cmd...


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

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

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