ВУЗ:
Составители:
Рубрика:
- 6 -
Осталось выяснить, как в программе работать с порождённым
динамическим объектом, например, как присвоить ему значение. Если к
обозначению указателя приписать справа стрелку ↑, то мы получим
обозначение объекта, ссылка на который хранится в данном указателе.
Выполнение оператора p↑:= 35 приведёт к тому, что целая переменная, на
которую указывает p, получит значение 35:
значение p↑ до присваивания не
определено
значение p↑ после присваивания
равно 35
Пусть n – имя переменной типа integer. Тогда при выполнении оператора
n:=p↑ значение динамической переменной будет присвоено статической
переменной n:
значение n до присваивания не
определено
значение n после присваивания
равно 35
Итак, приписывание стрелки справа к указателю – это способ изобразить
динамическую переменную в программе. Такое обозначение (со стрелкой
справа) называется переменная с указателем. С помощью металингвистических
формул (БНФ) подытожим все возможные обозначения переменных в языке
Паскаль:
<переменная>::= <полная переменная> | <переменная с
индексом> | <компонента записи> | <буферная переменная> |
<переменная с указателем>
<
полная переменная> ::= <имя переменной>
<переменная с индексом> ::= <переменная-массив> [
<индексное выражение>
{,<индексное выражение>}]
<компонента записи> ::= <переменная-запись>.<имя поля>|
<имя поля>
<буферная переменная> ::= <файловая переменная>↑
<переменная с указателем> ::= <ссылочная переменная>↑
<переменная-массив> ::= <переменная>
типа 'массив'
<переменная-запись> ::= <переменная>
типа 'запись'
<файловая переменная> ::= <переменная>
типа 'файл'
<ссылочная переменная> ::= <переменная>
типа 'ссылка'
<имя переменной>::=<идентификатор>
p
35
p
35
n
p
{p
↑
:= 35}
p
35
{ n:=p
↑
}
n
35
Осталось выяснить, как в программе работать с порождённым динамическим объектом, например, как присвоить ему значение. Если к обозначению указателя приписать справа стрелку ↑, то мы получим обозначение объекта, ссылка на который хранится в данном указателе. Выполнение оператора p↑:= 35 приведёт к тому, что целая переменная, на которую указывает p, получит значение 35: p {p↑:= 35} p 35 значение p↑ до присваивания не значение p↑ после присваивания определено равно 35 Пусть n – имя переменной типа integer. Тогда при выполнении оператора n:=p↑ значение динамической переменной будет присвоено статической переменной n: n n 35 { n:=p↑ } p p 35 35 значение n до присваивания не значение n после присваивания определено равно 35 Итак, приписывание стрелки справа к указателю – это способ изобразить динамическую переменную в программе. Такое обозначение (со стрелкой справа) называется переменная с указателем. С помощью металингвистических формул (БНФ) подытожим все возможные обозначения переменных в языке Паскаль: <переменная>::= <полная переменная> | <переменная с индексом> | <компонента записи> | <буферная переменная> | <переменная с указателем> <полная переменная> ::= <имя переменной> <переменная с индексом> ::= <переменная-массив> [ <индексное выражение> {,<индексное выражение>}] <компонента записи> ::= <переменная-запись> <имя поля>| . <имя поля> <буферная переменная> ::= <файловая переменная>↑ <переменная с указателем> ::= <ссылочная переменная>↑ <переменная-массив> ::= <переменная>типа 'массив' <переменная-запись> ::= <переменная>типа 'запись' <файловая переменная> ::= <переменная>типа 'файл' <ссылочная переменная> ::= <переменная>типа 'ссылка' <имя переменной>::=<идентификатор> -6-
Страницы
- « первая
- ‹ предыдущая
- …
- 4
- 5
- 6
- 7
- 8
- …
- следующая ›
- последняя »