![]() |
|
![]() ![]() ![]() |
|
Robix |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 1.6.2009 Репутация: нет Всего: нет |
Когда с помощью ф-ции gets заношу строку состоящую из русских букв в массив char, то потом при выводе на экран через printf этого массива получаются некорректные символы(с английскими буквами отображение правильное). Как исправить ситуацию с русскими ?
Приложение консольное под win32 VS2010. |
|||
|
||||
586 |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2243 Регистрация: 8.5.2006 Репутация: 6 Всего: 146 |
|
|||
|
||||
alexvs11 |
|
|||
hell is here ![]() ![]() Профиль Группа: Участник Сообщений: 518 Регистрация: 21.8.2010 Репутация: нет Всего: 10 |
либо использовать юникод, но в любом случае проверить, что шрифты консоли имеют русские символы в принципи
|
|||
|
||||
Robix |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 1.6.2009 Репутация: нет Всего: нет |
Не получается, к сожалению. Вот прикрепляю пример. Гляньте, мож найдете в чем дело.
После компиляции в vs2010 консольное приложение без поддержки юникода при выводе списка в который заносились символы по-русски они выводятся некорректно (английские нормально) Это сообщение отредактировал(а) Robix - 12.3.2011, 23:58 Присоединённый файл ( Кол-во скачиваний: 15 ) ![]() |
|||
|
||||
миг |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 158 Регистрация: 15.9.2008 Репутация: нет Всего: 1 |
после открытия программы. в открывшимся консольном окне выберите свойства шрифта Lucida console(правая кнопка мыши)..
Присоединённый файл ( Кол-во скачиваний: 12 ) ![]() --------------------
Oaks may fall when reeds stand the storm. |
|||
|
||||
neokoder |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 14.4.2010 Репутация: -2 Всего: -3 |
||||
|
||||
neokoder |
|
||||
Шустрый ![]() Профиль Группа: Участник Сообщений: 69 Регистрация: 14.4.2010 Репутация: -2 Всего: -3 |
Ни фига не сработает. Лови код, Robix:
|
||||
|
|||||
Robix |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 62 Регистрация: 1.6.2009 Репутация: нет Всего: нет |
Ага, спс, так нормально работает. Буду знать. |
|||
|
||||
миг |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 158 Регистрация: 15.9.2008 Репутация: нет Всего: 1 |
без комментариев --------------------
Oaks may fall when reeds stand the storm. |
|||
|
||||
neokoder3 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 14.3.2011 Репутация: нет Всего: нет |
Не везде это будет работать. А мой код универсальный - всегда будет работать. Всё что вы сделали - это просто выбрали шрифт поддерживающий CP866 В консоли. Блин, была бы возможность удалиил бы свой код. Вот пишешь, людям помогаешь, а благодарности в ответ никакой. |
|||
|
||||
миг |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 158 Регистрация: 15.9.2008 Репутация: нет Всего: 1 |
мне кажется, что ваш код будет не совсем корректно работать. А именно при выводе строки на экран функцией printf. на экране появится не только эта строка "File was create. Файл успешно создан.", но еще и весь мусор, который храниться в массиве mes_866[100]. Так, что рекомендую добавить строчку mes_866[buf_size]='\0'; Это сообщение отредактировал(а) миг - 15.3.2011, 05:33 --------------------
Oaks may fall when reeds stand the storm. |
|||
|
||||
alexvs11 |
|
||||||||
hell is here ![]() ![]() Профиль Группа: Участник Сообщений: 518 Регистрация: 21.8.2010 Репутация: нет Всего: 10 |
ага, но можно убрать указание размера и все ок будет |
||||||||
|
|||||||||
neokoder7 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 16.3.2011 Репутация: нет Всего: нет |
Конечно же надо добавить нулевой символ в mes_866. Писал же в качестве примера, можно сказать в псевдокоде. Молодцы, что поправили.
Добавлено через 47 секунд Меня тут банят, так что я уже тут не буду отвечать. Счастливо! |
|||
|
||||
![]() ![]() ![]() |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |