ВУЗ:
Составители:
Рубрика:
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
Страницы
- « первая
- ‹ предыдущая
- …
- 23
- 24
- 25
- 26
- 27
- …
- следующая ›
- последняя »