С Новым годом! Форум программистов, компьютерный форум, киберфорум
Free Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/114: Рейтинг темы: голосов - 114, средняя оценка - 4.68
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
1

Модуль CRT, clrscr и кириллица

03.06.2011, 19:18. Показов 22779. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написал программу. Ввод и вывод строк русскими буквами. После проверки проги, очень не понравилось сохранение всех данных в консоли и я использовал модуль crt и естественно процедуру clrscr. и вот, после очередной проверки у меня вместо фразы "Задайте вопрос" вылезли непонятные мне "кракозябры".
Как с этим бороться? Очень нужно использование clrscr'ина вместе с кириллицой.

Заранее спасибо!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.06.2011, 19:18
Ответы с готовыми решениями:

Модуль CRT
Ребята, помогите Please:help:: Надо зарисовать фон не используя графический модуль:wall: Я слышал...

Модуль CRT
У меня есть такого вида меню: uses crt; var s,s1,s2,s3,s4:string; x,y:integer; kod:char; begin...

модуль Crt
Доброго времени суток! Помогите пожалуйста. Мне нужно переделать эту программу так, чтобы внутри...

Модуль Crt
1. Сгенерировать случайным образом и вывести на экран 8 окон разного цвета и размера. ...

15
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
03.06.2011, 21:53 2
А до вызова clrscr кириллица выводится нормально? Попробуй установить кодировку вот таким образом
Pascal
1
2
3
4
5
6
7
uses
  Windows;
begin
  SetConsoleCP(1251);
  SetConsoleOutputCP(1251);
  ...
end.
1
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
03.06.2011, 22:07  [ТС] 3
Цитата Сообщение от rangerx Посмотреть сообщение
А до вызова clrscr кириллица выводится нормально?
Нормально. Без clrscr, число с crt модулем невозможно вводить/выводить кириллицу.


Цитата Сообщение от rangerx Посмотреть сообщение
Попробуй установить кодировку вот таким образом
Тоже самое.
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
03.06.2011, 22:45 4
У меня сейчас к сожалению нет возможности проверить... В общем, попробуй вместо 1251 указать 866. А вообще неплохо бы скрин с этими "кракозябрами" посмотреть...
0
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
04.06.2011, 00:41  [ТС] 5
Если указываю вместо 1251 866, кириллица выводится, но если к проге подключить еще и crt - все по прежнему.
Миниатюры
Модуль CRT, clrscr и кириллица  
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
04.06.2011, 11:52 6
Судя по всему crt как раз и устанавливает 1251, а Free Pascal IDE сохраняет файлы в 866... Попробуй поискать возможность выбора кодировки в настройках самой IDE.
1
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
04.06.2011, 14:14  [ТС] 7
Искал - не нашел. Придется выбрать что-то одно... Или кириллица или очистка.

rangerx, спасибо за помощь!
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
04.06.2011, 16:28 8
Цитата Сообщение от Vovcheg Посмотреть сообщение
Искал - не нашел. Придется выбрать что-то одно... Или кириллица или очистка.
Никто не мешает тебе набить текст программы в стандартном виндовом Блокноте и сохранить файл в 1251
0
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
04.06.2011, 16:55  [ТС] 9
Цитата Сообщение от rangerx Посмотреть сообщение
Никто не мешает тебе набить текст программы в стандартном виндовом Блокноте и сохранить файл в 1251
Не помогло... ;'(
При сохранении в 1251 и копировании в Паскаль вместо русских букаф знаки вопроса.
1
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
04.06.2011, 17:24 10
Free Pascal IDE это не компилятор. Компилятор это файл, который называется fpc.exe. Тебе не нужно ничего никуда копировать. Открой командную строку и набери
1) cd путь_к_каталогу_с_исходным_файлом
2) fpc.exe имя_исходного_файла.pas
После этого в каталоге с исходником появится рабочая программа, которая будет называться имя_исходного_файла.exe. Запусти её набрав
имя_исходного_файла.exe
0
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
04.06.2011, 18:06  [ТС] 11
Теперь русские буквы выводятся отлично, а вот когда вводишь тоже самое...
0
Почетный модератор
64303 / 47600 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
04.06.2011, 18:42 12
Не знаю в чем у Вас проблема, у меня без всяких выкрутасов все работает как нужно.
Миниатюры
Модуль CRT, clrscr и кириллица   Модуль CRT, clrscr и кириллица  
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
04.06.2011, 19:25 13
Цитата Сообщение от Vovcheg Посмотреть сообщение
Теперь русские буквы выводятся отлично, а вот когда вводишь тоже самое...
Ты вот эти две функции
Pascal
1
2
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
вызвал в самом начале?
1
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
04.06.2011, 19:35  [ТС] 14
rangerx, у тебя работает также как и у Puporev'a?

Цитата Сообщение от rangerx Посмотреть сообщение
вызвал в самом начале?
Завтыкал. Теперь все нормально. Кроме разве что вот этого:
Миниатюры
Модуль CRT, clrscr и кириллица  
0
2022 / 1621 / 489
Регистрация: 31.05.2009
Сообщений: 3,005
04.06.2011, 21:45 15
Цитата Сообщение от Vovcheg Посмотреть сообщение
rangerx, у тебя работает также как и у Puporev'a?
У меня она никак не работает, по той простой причине, что она у меня не установлена Плюс ко всему я сижу под Linux`ом.
Цитата Сообщение от Vovcheg Посмотреть сообщение
Кроме разве что вот этого:
Ну так верни 866 перед завершением программы.

Добавлено через 10 минут
Только что погуглил.... Попробуй для ярлыка запуска IDE выставить "точечные шрифты" (как я вижу настройки шрифта ты менял). Т.е. верни всё на значения по умолчанию. Не знаю как это может быть связано, но на freepascal.ru ТС это помогло
3
38 / 38 / 18
Регистрация: 16.05.2011
Сообщений: 139
04.06.2011, 22:04  [ТС] 16
Цитата Сообщение от rangerx Посмотреть сообщение
Попробуй для ярлыка запуска IDE выставить "точечные шрифты"
Да-да!! Помогло! Огромное спасибо, что не прошел мимо этой темы и помог мне!
Не представляешь как я рад... А то возня со всякими разными кодировками меня никак не устраивала. Кто бы мог подумать, что вся проблема была в шрифте...
Еще раз - огромное спасибо!
1
04.06.2011, 22:04
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.06.2011, 22:04
Помогаю со студенческими работами здесь

Модуль CRT
Здравствуйте! Помогите, пожалуйста. Как написать такую программу на Pascal?

Модуль Crt
Во всех заданиях в последней строке экрана сформируйте подсказку о «горячих» клавишах и реализуйте...

модуль CRT
не удивляйтесь вопросу, но мне очень нужно узнать ,что-то дополнительно (интересное) о модуле CRT....

Модуль crt;
Доброго времени суток)) Процедуры и функции модуля CRT; Составьте программу вывода на экран окна....


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Что такое HCL Notes и как с ним работать
InfoMaster 10.01.2025
HCL Notes (ранее известный как IBM Notes и Lotus Notes) представляет собой комплексную платформу для совместной работы и обмена информацией в корпоративной среде. Это многофункциональное решение,. . .
Как работать с Git из Windows и Visual Studio
InfoMaster 10.01.2025
Работа с Git в Windows Работа с Git в операционной системе Windows может быть осуществлена с помощью различных инструментов, каждый из которых обладает своими уникальными возможностями и. . .
Аналог оператора switch case в Python
InfoMaster 10.01.2025
Оператор switch case используется в программировании для выбора одного из нескольких вариантов исполнения кода. Однако в языке Python этот оператор отсутствует. Понимание аналогов switch case в. . .
Отличия абстрактного класса от интерфейса
InfoMaster 10.01.2025
В современной разработке программного обеспечения существуют два основных механизма реализации абстракции: абстрактные классы и интерфейсы. Эти инструменты, хотя и схожи в своей основной цели -. . .
Как работать в Git
InfoMaster 10.01.2025
Git — это одна из наиболее популярных систем контроля версий, которая активно используется разработчиками по всему миру. Она позволяет эффективно управлять изменениями в коде, координировать работу. . .
Реализация передвижения персонажа в Unity3d на C#
InfoMaster 10.01.2025
Реализация передвижения персонажа в Unity3D начинается с правильной настройки проекта. Этот этап критически важен для создания отзывчивого и плавного управления. Рассмотрим основные шаги для создания. . .
Docker: руководство для начинающих
InfoMaster 10.01.2025
В современном мире разработки программного обеспечения контейнеризация стала неотъемлемой частью процесса создания и развертывания приложений. Docker, как ведущая платформа контейнеризации, произвела. . .
Книги и учебные ресурсы по C#
InfoMaster 08.01.2025
Базовые учебники и руководства Одной из лучших книг для начинающих является "C# 10 и . NET 6 для начинающих" Эндрю Троелсена и Филиппа Джепикса . Книга последовательно раскрывает основные концепции. . .
Что такое NullReferenceEx­­­ception и как исправить?
InfoMaster 08.01.2025
NullReferenceException - одно из самых распространенных исключений, с которым сталкиваются разработчики на C#. Это исключение возникает при попытке обратиться к членам объекта (методам, свойствам или. . .
Что такое Null Pointer Exception (NPE) и как это исправить?
InfoMaster 08.01.2025
Null Pointer Exception (NPE) - это одно из самых распространенных исключений в Java, которое возникает при попытке использовать ссылку на объект, значение которой равно null. Это исключение относится. . .
Русский язык в консоли C++
InfoMaster 08.01.2025
При разработке программ на C++ одной из частых проблем, с которой сталкиваются русскоязычные программисты, является корректное отображение кириллицы в консольных приложениях. Эта проблема особенно. . .
Telegram бот на C#
InfoMaster 08.01.2025
Разработка ботов для Telegram стала неотъемлемой частью современной экосистемы мессенджеров. C# предоставляет мощный и удобный инструментарий для создания разнообразных ботов, от простых. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru