Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции Динамические структуры.doc
Скачиваний:
16
Добавлен:
01.07.2025
Размер:
435 Кб
Скачать
☆

Работа с информацией (разыменование)

Операция разыменования – это обращение к содержимому области памяти, адрес которой содержит указатель. Для обозначения этой операции используется символ ^, который приписывается после идентификатора указателя.

Пример 1. Присваивание значение ячейке, на которую ссылается указатель:

a^ :=10;

b^ :=2;

writeln('сумма = ',a^ + b^);

Здесь по адресу, содержащемуся в указателе а, помещаем значение 10:

a

адрес 1

b

адрес 2

a^

10

b^

Затем по адресу, содержащемуся в указателе b, помещаем значение 2 :

a

адрес 1

b

адрес 2

a^

10

b^

2

После этого происходит обращение к значениям, находящимся по адресу указателя а (а^) и по адресу указателя b (b^). Эти значения складываются и выводятся на экран. Результат – 12.

Пример 2. Копирование значения ячейки, на которую ссылается указатель:

a^:=b^;

При этом получается такое состояние ячеек:

a

адрес 1

b

адрес 2

a^

2

b^

2

Работа с адресом

Все действия с адресом (значением указателя) необходимо выполнять осторожно, так как они могут привести к потере информации из-за уничтожения ее адреса.

Копирование адреса.

a:=b;

Оба указателя начинают ссылаться на один и тот же адрес. Результат:

a

адрес 2

b

адрес 2

2

a^ b^

2

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

Сравнение. Сравнивать указатель можно только с указателем того же типа или с константой – Nil. После выполнения действия выше операция A = B даст значение True, операция A = Nil даст значение False.