| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > Проблема с русскими буквами |
| Автор: vladd 5.6.2012, 08:55 | ||
Пишу на C++ Bulder 6 в консоли. Для вывода на экран русских букв использую код
Работает правильно. Но вот когда пишу в консоли русский текст, присваиваю его переменной а потом вывожу на экран получаю кракозябры. Что нужно сделать чтобы выводило нормальный русский текст? Я так понимаю что проблема при считывании русских букв с экрана. |
| Автор: artsb 5.6.2012, 09:34 | ||
Почему бы не воспользоваться setlocale()?
|
| Автор: vladd 5.6.2012, 09:57 | ||
Это
у меня даже на консоль вместо русских букв выдает кракозябры. У меня Borland C++ Bulder Enterprise Suite Version 6.0(Build 10.155) |
| Автор: artsb 5.6.2012, 10:38 | ||||||
Эта строчка должна быть прописана в самом начале программы. У меня раньше работало и сейчас работает. И под VS и под RADStudio. К сожалению, нет BCB6, чтобы проверить. Добавлено через 11 минут и 34 секунды Попробуйте ещё:
Или:
Или же используйте WideChar:
|
| Автор: vladd 5.6.2012, 11:02 | ||
Я вставлял все это в класс main
подобно этой вставке. И все равно даже в консоль идет вывод кракозябр вместо русских букв. |
| Автор: vladd 5.6.2012, 11:48 | ||||||
Вот этот код вроде выдает русские символы в консоль. Но появилась следующая проблема. Есть строка вывода текста в консоль такого вида
где pacient - это структура. Как эта строка должна выглядеть через wprintf(L" ");Дошел до этого
А дальше как не знаю. Постоянно идут ошибки.Прошу помощи. |
| Автор: LeonidPr 5.6.2012, 11:50 |
| У меня на BCB5 работает правильно. |
| Автор: artsb 5.6.2012, 12:29 | ||
|
| Автор: vladd 5.6.2012, 13:08 |
Спасибо большое за помощь. Но все равно не хочет писать по русски. Снимок экрана. Пошли цифры теперь. |
| Автор: vladd 5.6.2012, 13:39 |
Вот еще один снимок. Он показывает что не правильно считывается фамилия петров с экрана.![]() |
| Автор: vladd 5.6.2012, 16:02 | ||||||
Для получения русских букв у меня получился вот такой код
А теперь кто подскажет. Для заполнения структуры я использовал такую строку
Теперь имею строку
Вопрос. Как мне теперь заполнить структуру pacient значением Bolnoy и другими? |
| Автор: artsb 5.6.2012, 16:35 | ||
А если
|
| Автор: vladd 5.6.2012, 17:01 | ||
Спасибо. Но мой компилятор ругается. Выдает такую ошибку
Что то с чем то не соответствует. |
| Автор: artsb 5.6.2012, 18:21 | ||
На какой строке? У меня работает:
|
| Автор: vladd 5.6.2012, 18:39 | ||||
У меня ругается на строке
Выдаёт ошибку
Добавлено через 3 минуты и 7 секунд Подключил библиотеки.Перестал ругатся. Добавлено через 5 минут и 18 секунд но на консоли кроме Нажмите на любую клавишу.... больше ничего. Добавлено через 8 минут и 33 секунды Добавил строку. Пишет цифрами. cout << L"Введите строку: "; |
| Автор: vladd 5.6.2012, 18:54 |
| Если писать std::wcout то на консоли ничего нет. Если std::cout то появляются цифры. |
| Автор: artsb 5.6.2012, 19:24 | ||
Для Юникода Wcout:
|