24. Тип данных указатель. Описание и примеры использования. Стандартные процедуры и функции для работы с динамической памятью.
Для работы с адресами используется специальный тип данных - указатель.
Данные этого типа включают два поля типа word и хранят соответственно сегментный адрес и смещение.
Различают указатели двух типов: типизированные и нетипизированные.
Типизированные указатели содержат адреса, по которым в памяти размещаются данные определенных типов. Используя эти указатели с данными указанных типов, можно выполнять операции, предусмотренные базовым типом.
Пример:
Туре tpi=^integer; {объявляем тип «указатель на целое»}
Var pi:tpi; {объявляем переменную этого типа}
или без предварительного объявления типа:
Var pi:^integer; {объявляем переменную типа «указатель на целое»}
Нетипизированные указатели хранят просто адреса, которые не связаны с данными конкретных типов. Для их объявления используют зарезервированное слово pointer.
Пример:
Var р:pointer;
Для указателей, которые не хранят никаких адресов, введена константа «нулевой адрес» с именем nil. Константу nil можно присваивать указателю любого типа.
Стандартные процедуры и функции для работы с динамической памятью.
<...>