Free Pascal — установка и запуск
Установка
Способ зависит от системы.
Windowsустановщик с сайта
Скачайте установщик с официального сайта freepascal.org (раздел Download) и установите с настройками по умолчанию.
Ubuntu и Debianпакет из репозитория
sudo apt update
sudo apt install fpcПервая команда обновляет список пакетов, вторая ставит компилятор.
macOSустановщик с сайта
Установщик для macOS тоже есть на сайте freepascal.org в разделе Download.
Проверьте, что компилятор на месте, — команда выводит его версию:
fpc -iVСобрать и запустить программу
Сохраните программу в файл, например hello.pas, откройте терминал (в Windows — командную строку) в папке с файлом и выполните:
fpc hello.pas
./hellofpc компилирует программу и создаёт рядом исполняемый файл: в Linux — hello, в Windows — hello.exe. В Windows запускайте его командой hello.exe.
Если в программе ошибка, fpc выведет её в виде hello.pas(строка,столбец) Fatal: … или … Error: …, например Fatal: Syntax error, ";" expected but "identifier WRITELN" found. Первое число в скобках — номер строки, второе — позиция в ней. Разбор частых сообщений — в справках Ошибка: ожидалась точка с запятой, Ошибка: несовместимые типы и Ошибка: неизвестное имя.
Среда fp
Вместе с компилятором ставится текстовая среда fp — она выглядит и работает почти как Turbo Pascal. Запустите её командой fp или из меню «Пуск» в Windows.
| Клавиши | Что делают |
|---|---|
F2 | сохранить файл |
F3 | открыть файл |
Alt+F9 | скомпилировать |
Ctrl+F9 | скомпилировать и запустить |
Alt+F5 | показать экран программы (вернуться — любая клавиша) |
Alt+X | выйти |
После запуска программа отрабатывает, и среда сразу возвращается к тексту. Чтобы увидеть вывод, нажмите Alt+F5 или поставьте в конце программы readln;.
Чем Free Pascal отличается от PascalABC.NET
- Тип
integer. В обычном режиме Free Pascal он хранит числа от −32 768 до 32 767, как в Turbo Pascal. Для больших чисел беритеlongintилиint64. Строка{$mode objfpc}в самом начале программы делаетinteger32-битным, но это настройка именно Free Pascal — для программ, которые должны работать везде, надёжнееlongint. Resultв функциях есть только в режимахobjfpcиdelphi. В обычном режиме результат присваивают имени функции.- Строки. В обычном режиме
stringвмещает до 255 символов, а русская буква в файле UTF-8 занимает два байта. - Модули.
IntToStr,StrToIntиSleepнаходятся в модулеsysutils,DelayиClrScr— вcrt. Их подключают строкойuses sysutils;илиuses crt;сразу после заголовка программы. - Проверка границ массивов по умолчанию выключена. Включите её ключом
-Cr:fpc -Cr hello.pas— тогда обращение к несуществующему элементу остановит программу с ошибкой, а не испортит данные.
Turbo Pascal и Lazarus
Turbo Pascal — среда для MS-DOS, её давно не выпускают, и в 64-битных версиях Windows она без эмулятора вроде DOSBox не запускается. Программы из старых учебников обычно собираются Free Pascal без изменений: он поддерживает и модуль crt с ClrScr, GotoXY и Delay.
Lazarus — бесплатная визуальная среда на основе Free Pascal: в ней рисуют окна с кнопками и полями. Для школьных консольных задач она не нужна, хватит fp или любого текстового редактора и команды fpc.