Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.56/25: Рейтинг темы: голосов - 25, средняя оценка - 4.56
0 / 0 / 0
Регистрация: 25.02.2010
Сообщений: 27
1

Русский текст в консольном приложении выводится каракулями

24.03.2010, 10:43. Показов 4757. Ответов 28
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем доброго времеи суток как сделать чтобы вместо каракуль после компилирования выводился русский текст?
Изображения
 
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.03.2010, 10:43
Ответы с готовыми решениями:

Не выводится русский текст в MS visual studio
я подключила setlocale(LC_CTYPE,"Russian"); SetConsoleCP(1251); SetConsoleOutputCP(1251); ...

Графика в консольном приложении
Помогите создать приблизительно такую штуку, которая будет высвечиваться при запуске консольной...

MessageBox в консольном приложении
сделал так чтоб выводило текст из файла в консоль #include "stdafx.h" #include <fstream>...

Меню в консольном приложении
есть ошибки не могу исправить #include <iostream> #include <iomanip> #include <ctime> #include...

28
55 / 55 / 5
Регистрация: 09.03.2009
Сообщений: 177
25.03.2010, 09:35 21
Author24 — интернет-сервис помощи студентам
Цитата Сообщение от levgen42 Посмотреть сообщение
вот такая вот ошибка error C2664: CharToOemW: невозможно преобразовать параметр 1 из 'const char [14]' в 'LPCWSTR'
В вижуал студии у вас в настройках указан набор символов unicode, поменяйте на ascii (Здесь описано какой параметр менять), либо используйте не const char а const wchar_t, либо используйте макрос TEXT, т.е. так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <windows.h>
#include <cstring>
 
using namespace std;
 
int main()
{
 
//char message[50]; // а это поменять на
wchar_t message[50];
string lastName;
string firstName;
CharToOem(TEXT("Введите Ваше имя: "),message);
cout << message;
cin >> lastName;
CharToOem(TEXT("Введите Вашу Фамилию: "),message);
cout << message;
cin >> firstName;
CharToOem(TEXT("Здравствуйте "),message);
cout <<message<<lastName <<firstName <<"!\n";
return 0;
}
Добавлено через 22 минуты
Либо вместо С++-ных cout << и cin >> для ввода и вывода используйте майкрософтовские Console::WriteLine() и Console::ReadLine()
0
542 / 447 / 162
Регистрация: 10.12.2009
Сообщений: 1,857
25.03.2010, 13:48 22
C++
1
2
3
4
5
#include <locale>
//========================
int main() {
      setlocale(LC_ALL,"Russian");
//========================
0
55 / 55 / 5
Регистрация: 09.03.2009
Сообщений: 177
25.03.2010, 16:51 23
Mиxaил, прочитатайте тему с начала
1
быдлокодер
1724 / 911 / 106
Регистрация: 04.06.2008
Сообщений: 5,679
25.03.2010, 18:26 24
Я порекомендую автору эту тему
Отображение символа (R) в консоли

...Из всех отвечающих только easybudda произнёс слова Lucida Console

Автор, помимо написания проги тебе вручную надо будет залезть в свойства и такой шрифт установить
0
0 / 0 / 0
Регистрация: 25.02.2010
Сообщений: 27
25.03.2010, 18:34  [ТС] 25
Цитата Сообщение от Cepera Посмотреть сообщение
В вижуал студии у вас в настройках указан набор символов unicode, поменяйте на ascii (Здесь описано какой параметр менять)
спасибо вам огромное поменял совсем чуть-чуть и заработало люди тему не читают а пишут лиж бы написать вот конкретный код для VS2008 все конкретно работает
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "stdafx.h" // подключил библиотеку
#include <iostream>
#include <windows.h>
#include <string> //сдесь cstring поменял на string
 
using namespace std;
 
int main(int argc, _TCHAR* argv[])
{
 
char message[50]; // сдесь wchar_t поменял на char
string lastName;
string firstName;
CharToOem(TEXT("Введите Ваше имя: "),message);
cout << message;
cin >> lastName;
CharToOem(TEXT("Введите Вашу Фамилию: "),message);
cout << message;
cin >> firstName;
CharToOem(TEXT("Здравствуйте "),message);
cout <<message<<lastName <<" " <<firstName <<"!\n";
return 0;
}
можно тему закрыть как вы думаете или оставить может у кого еще какие вопросы возникнут
0
55 / 55 / 5
Регистрация: 09.03.2009
Сообщений: 177
25.03.2010, 19:02 26
Цитата Сообщение от kravam Посмотреть сообщение
помимо написания проги тебе вручную надо будет залезть в свойства и такой шрифт установить
Необязательно, средствами вижуал студии можно обойтись
ЗЫ: А по поводу шрифтов и кодировок, меня этим виндовс просто добивает!!! Вот кому в майкрософте в голову пришло привязать кодировку к шрифтам??? Меняешь шрифт, меняется и кодировка (это же дурость из дурости)
0
Эксперт С++
5043 / 2622 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 1
25.03.2010, 22:49 27
Цитата Сообщение от levgen42 Посмотреть сообщение
люди тему не читают а пишут лиж бы написать
про CharToOem говорится в теме, которая есть в шапке. Люди темы не читают.
0
3 / 3 / 2
Регистрация: 27.01.2010
Сообщений: 17
31.03.2010, 09:21 28
C++
1
2
3
4
5
6
7
8
9
10
11
12
#include <iomanip>
#include <iostream>
#include <locale>
using namespace std;
 
void main()
{
    locale::global(locale("rus"));
    
    printf("Введите a "); cin>>a;
    
    cout<<"Привет";
мне помогло... из файла читает нормально, и на экран выдает
0
Эксперт JavaЭксперт С++
8384 / 3616 / 419
Регистрация: 03.07.2009
Сообщений: 10,709
31.03.2010, 10:18 29
Цитата Сообщение от levgen42 Посмотреть сообщение
C++
1
#include <string> //сдесь cstring поменял на string
библиотеки string.h(cstring) и string - это разные вещи и предназначены для разных вещей
cstring предназначен для использования функций обработки обычных строк(strtok, strstr, etc.), а string для работы со строками типа std::string.
0
31.03.2010, 10:18
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.03.2010, 10:18
Помогаю со студенческими работами здесь

WxWidgets - в консольном приложении
Начал изучение библиотек wxWidgets в Code Blocks, столкнулся с проблемой компиляции, вроде все...

Вывод в консольном приложении
Мне надо после 19 вернуться на прежнюю строку. Что бы после 19 числа начали выводиться вверх ( по...

Ошибка в консольном приложении
{ class Program { public struct Point { public int X; ...

Вывод в консольном приложении
Всем доброго времени суток. Написал приложение выводящие через printf 5 строк с паузой в 1 сек....


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

Или воспользуйтесь поиском по форуму:
29
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru