Реферат: Типы и виды данных на языке Pascal 7.0

Тип указатель (ссылочный тип) определяет множество значений, которые указывают на динамические переменные определенного типа, называемого базовым типом. Переменная с типом указатель содержит адрес динамической переменной в памяти.

Если базовый тип является еще не описанным идентификатором, то он должен быть описан в той же самой части описания типов, что и тип указатель.

Переменной-указателю можно присвоить значение с помощью процедуры New, операции @ или функции Ptr. Процедура New отводит новую область памяти в динамически распределяемой области для динамических переменных и сохраняет адрес этой области в переменной указателя. Операция @ ориентирует переменную указателя на область памяти, содержащую существующую переменную, включая и те переменные, которые имеют идентификаторы. Функция Ptr ориентирует переменную указателя на определенный адрес в памяти.

Зарезервированное слово nil обозначает константу со значением указателя, которая ни на что не указывает.

Встроенный указатель типа обозначает нетипизованный указатель, то есть указатель, который не указывает ни на какой определенный тип. Переменные типа Pointer могут быть разыменованы; указание символа ^ после такой переменной вызывает появление ошибки. Как и значение, обозначаемое словом nil, значения типа Pointer совместимы со всеми другими типами указателей.

В разделе "Указатели и динамические переменные" в Главе4 вы можете найти синтаксис ссылки на динамические переменые, которые указываются с помощью указателя-переменной.

ТИПИЗИРОВАННЫЕ КОНСТАНТЫ

В Турбо Паскале допускается использование типизированных констант. Они задаются в разделе объявления констант следующим образом:

<индификатор> : <тип> = <значение>

Здесь <индификатор> - индификатор константы;

<тип> - тип константы;

<значение> - значение константы.

Типизированным константам можно присваивать другие значения в ходе выполнения программы, поэтому фактически они представляют собой переменные с начальными значениями. Типизированная константа приобретает указанное в её объявлении значение, т.е. инициируется, лишь один раз: к моменту начала работы программы. При повторном входе в блок (роцедуру или функцию), в котором она объявлена, инициация типизированной константы не производится и она сохраняет то значение, которое имела к моменту выхода из блока.

Типизированные константы могут быть любого типа, кроме файлов. Нельзя также объявить типизированную константу – запись, если хотя бы одно из её полей является полем файлового типа.

Поскольку типизированная константа фактически не отличается от переменной, её нельзя использовать в качестве значения при объявлении других констант или границ типа-диапазона.

КОНСТАНТЫ ПРОСТЫХ ТИПОВ И ТИПА STRING

Объявление таких констант обычно не вызывает трудностей, так как в качестве их значения испоьзуется нетипизированные константы или их индификаторы.

КОНСТАНТЫ-МАССИВЫ

В качестве начального значения типизтрованной константы-массива используются список констант, отделённых друг от друга запятыми; список заключается в круглые собки.

При объявлении многомерных констант-массивов множество констант, соответствующих каждому измерению, заключается в дополнительные круглые скобки и отделяется от соседнего множества запятами. В результате образуются вложенные структуры множеств, причём глубина вложения должна сответствовать количеству измерений (размерности) массива. Самые внутрение множества констант связываются с измерением самого правого индекса массива.

КОНСТАНТЫ-ЗАПИСИ

Определение константы-записи имеет следующий вид:

<индификатор> : <тип> (<сп.знач.полей>)

Здесь <индификатор> – индификатор константы;

<тип> – тип записи;

<сп.инд.полей> – список значений полей.

Список значений полей представляет собой список из последовательностей вида: имя поля, двоеточие и константа. Элементы списка отделяются друг от друга двоеточиями.

КОНСТАНТЫ-МНОЖЕСТВА

Значение типизированной константы-множества задаётся в виде правильного конструктора множеств.

КОНСТАНТЫ-УКАЗАТЕЛИ

Единственным значением типизированной константы-указателя может быть только NIL.

К-во Просмотров: 135
Бесплатно скачать Реферат: Типы и виды данных на языке Pascal 7.0