Работа с Delphi. Простые и структурные типы данных
Типы данных определяют множество допустимых значений, которые может иметь тот или иной объект, а также множество допустимых операций, которые применимы к нему. Кроме того, тип определяет также и формат внутреннего представления данных в памяти ПК.
В тексте программы последовательность символов, являющаяся строкой, заключается в ординарные кавычки.
Массивом называется упорядоченная индексированная совокупность однотипных элементов, имеющих общее имя. Таким образом, каждый элемент массива однозначно определяется именем массива и индексом (номером этого элемента в массиве) или индексами, если массив многомерный. Для обращения к отдельному элементу массива указываются имя этого массива и индекс (индексы) элемента, заключенный в квадратные скобки.
Различают массивы статические и динамические. Статический массив представляет собой массив, границы индексов и, соответственно, размеры которого задаются при объявлении, т.е. они известны еще до компиляции программы. Формат описания типа статистического массива:
Array [тип индексов] of <тип элементов>;
Файл представляет собой именованную последовательность однотипных элементов, размещенных на внешнем устройстве. Для выполнения операций с конкретным файлом в программе обычно используется так называемая файловая переменная или логический файл. В зависимости от типа элементов различают текстовые, типизированные и нетипизированные файлы.
Записи объединяют фиксированное число элементов данных других типов. Отдельные элементы записи имеют имена и называются полями. Имена полей должны быть уникальными в пределах записи.
Для обращения к конкретному полю необходимо указывать имя записи и имя поля, разделенные точкой.
Указатели (pointers) — это такой тип переменных, которые хранят адрес в памяти компьютера, по которому расположена другая переменная. Фактически, указатель не содержит значение, а ссылается на него.
Указатели можно задать двумя принципиально разными способами. Во-первых, можно использовать специальный тип — Pointer. При этом будет создан нетипизированный указатель, под который всякий раз надо будет принудительно выделять память, используя функцию GetMem. Другой, как правило более предпочтительный способ, состоит в том, что сразу же создается указатель нужного типа. Делается это при помощи символа «^», предшествующего названию типа:
var P: ^integer;