- •4.1. Активизация иср и выход из среды.
- •4.2. Назначение и содержание окна иср.
- •4.3. Назначение пунктов меню File, Edit, Search. Меню работы с файлами (File)
- •Меню редактирования (Edit)
- •Меню поиска информации (Searh)
- •4.4. Назначение пунктов меню Run, Compile, Debug. Меню выполнения программы (Run)
- •Меню компиляции (Compile)
- •Меню отладки (Debug)
- •4.5. Назначение пунктов меню Options, Window, Help. Меню параметров среды (Options)
- •Меню окон (Window)
- •17.5.10. Меню информационной помощи (Help)
- •4.6. Отличия проектов Программа и Модуль.
- •4.7. Кодировки ansi и ascii.
- •4.8. Алфавит языка FreePascal, операции, идентификаторы.
- •4.9. Структура программы. Разделы объявления констант, переменных, меток, типов данных, подпрограмм.
- •4.10. Константы. Их объявление. Константные выражения.
- •4.11. Переменные. Их объявление.
- •4.12. Форматы представления чисел (с фиксированной и плавающей точкой).
- •4.16. Тип tDateTime и его использование.
- •4.17. Логические типы данных Boolean.
- •4.20. Строковые типы для коротких строк: ShortString, String[n].
- •4.21. Совместимость типов при присвоениях.
- •4.22. Тип Variant и его использование.
4.20. Строковые типы для коротких строк: ShortString, String[n].
Короткие строки ShortString. Предназначены только для обратной совместимости, отчасти потому, что занимают в памяти всегда 256 байт независимо от фактического числа символов (если строка описана без задания максимального числа символов). Функция High возвращает максимальный размер строки, а Low – нуль.
4.21. Совместимость типов при присвоениях.
Одним из требований в языке программирования Pascal является следующее: в выражениях (в том числе при сравнении) должны использоваться операнды с совместимыми типами. Типы совместимы, если выполняется хотя бы одно из условий.
Оба типа эквивалентны.
Оба типа целые.
Оба типа вещественные.
Один из типов имеет интервальный тип, а другой тип является для него базовым:
type
tp1 = integer;
tp2 = -1..1000;
Оба типа являются диапазонами одного и того же базового типа
Один тип строковый, а второй — либо строковый, либо символьный, либо упакованный символьный массив.
Оба типа — упакованные символьные массивы с одинаковым числом элементов.
Оба типа являются множествами с совместимыми базовыми типами
Один тип является ссылочным, а второй — либо ссылочный, либо бестиповый указатель.
Оба типа — это процедурные типы с одним и тем же числом параметров, причем типы параметров должны быть эквивалентными (в соответствии с их порядком следования), а для функциональных типов также должны быть эквивалентными типы результатов.
4.22. Тип Variant и его использование.
Компилятором FPC поддерживается тип variant. Для того чтобы включить поддержку вариантного типа, необходимо упомянуть в предложении uses модуль variants во всех модулях, в которых используется тип variant. Более того, компилятор должен быть в режимах Delphi или Objfpc.
Предназначен для использования в том случае, когда на этапе компиляции тип данных не известен, или может уточняться при выполнении программы. Введен для поддержки технологии OLE (Object Linking and Embedding – Связывание и внедрение объектов). Занимает в памяти дополнительно 2 байта для информации о фактическом типе данных. Эта информация позволяет компилятору создать код, осуществляющий при исполнении программы необходимые преобразования данных. С переменной типа Variant совместимы (могут быть в нее помещены) типы:
целые или вещественные (кроме Int64),
логические,
строки,
время и/или дата,
OLE-объект (объект, переносимый системой из других приложений через буфер),
массив произвольной размерности и длины, содержащий элементы перечисленных типов.