Алгоритмические языки и программирование. Аксенова Л.И - 25 стр.

UptoLike

25
Var A,B,C: ssint;
...
В этом случае А, В, С являются указателями на переменные целого типа.
Для обращения к значениям этих переменных служат идентификаторы: A^,
B^, C^.
Кроме того, в ТР определен специальный тип Pointer, с помощью
которого указатель может быть объявлен следующим образом:
Var Имя указателя : pointer;
TP допускает описание типизированных констант типа Pointer (констант
ссылочного типа). Начальным значением
таких констант может быть только
Nil.
Например:
Type Tmas = Array[1..10] of char; { Описание базового типа}
sm = ^Tmas; { указатель на массив из 10 символов}
Const s1 : sm = Nil; {Задание начального значения Nil для
типизированной константы ссылочного типа: s1}
Значения указателей можно сравнивать только с помощью проверок на
равенство и неравенство. Допустимо использование оператора присваивания,
например: A:=Nil;
Для динамических переменных допустимы все те же
операции, что и над
обычными переменными данного типа.
Все указатели (ссылочные переменные) имеют одинаковый размер,
равный 4 байтам. Память под ссылочные переменные отводится на этапе
трансляции, а распределение памяти (а затем и её освобождение) под сами
динамические объекты осуществляется в процессе работы программы с
помощью стандартных процедур и функций ТР.
2.2.
Стандартные процедуры и функции для работы
с динамическими переменными
Любым действиям с динамической переменной должен предшествовать
процесс её размещения в динамической памяти. Для этого может быть
использована процедура:
New(P);
   Var A,B,C: ssint;
           ...
   В этом случае А, В, С являются указателями на переменные целого типа.
Для обращения к значениям этих переменных служат идентификаторы: A^,
B^, C^.
   Кроме того, в ТР определен специальный тип Pointer, с помощью
которого указатель может быть объявлен следующим образом:
   Var Имя указателя : pointer;
   TP допускает описание типизированных констант типа Pointer (констант
ссылочного типа). Начальным значением таких констант может быть только
Nil.
   Например:
   Type Tmas = Array[1..10] of char; { Описание базового типа}
                 sm = ^Tmas; { указатель на массив из 10 символов}
     Const s1 : sm = Nil; {Задание начального значения Nil для
                    типизированной константы ссылочного типа: s1}

   Значения указателей можно сравнивать только с помощью проверок на
равенство и неравенство. Допустимо использование оператора присваивания,
например: A:=Nil;
   Для динамических переменных допустимы все те же операции, что и над
обычными переменными данного типа.
   Все указатели (ссылочные переменные) имеют одинаковый размер,
равный 4 байтам. Память под ссылочные переменные отводится на этапе
трансляции, а распределение памяти (а затем и её освобождение) под сами
динамические объекты осуществляется в процессе работы программы с
помощью стандартных процедур и функций ТР.

          2.2. Стандартные процедуры и функции для работы
                    с динамическими переменными

  Любым действиям с динамической переменной должен предшествовать
процесс её размещения в динамической памяти. Для этого может быть
использована процедура:
    New(P);




                                   25