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

Процедуры передачи управления

В Паскале есть несколько стандартных процедур, изменяющих последовательность выполнения операторов:

break - завершает выполнение цикла, внутри которого записана;

continue - выполняет переход к следующей итерации цикла;

exit - выходит из программы или подпрограммы, внутри которой записана;

halt - немедленно завершает выполнение программы.

Кроме того, для передачи управления используется оператор перехода goto

Оператор перехода goto

Этот оператор имеет простой синтаксис: в точке программы, из которой требуется организовать переход, после слова goto через пробел записывается имя метки, например goto 1 или goto error. При программировании на Паскале необходимость в применении оператора перехода возникает, как правило, в двух случаях:

-принудительный выход вниз по тексту программы из нескольких вложенных циклов или операторов выбора;

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

35

Динамическая память - это оперативная память ЭВМ, предоставляемая Турбо-Паскалевой программе при её работе, за вычетом сегмента данных (64 К), стека (обычно 16 К) и собственно тела программы. По умолчанию размер динамической памяти определяется всей доступной памятью ЭВМ и, как правило, составляет не менее 200 - 300 Кбайт.

Динамическую память обычно используют при:

1. обработке больших массивов данных;

2. разработке САПР;

3. временном запоминании данных при работе с графическими и звуковыми средствами

ЭВМ.

Размещение статических переменных в памяти осуществляется компилятором в процессе компиляции.

Динамические переменные - размещаются в памяти непосредственно в процессе работы программы. При динамическом размещении заранее неизвестны ни тип, ни количество размещаемых данных, к ним нельзя обращаться по именам, как к статическим переменным. Турбо-Паскаль представляет средство управления динамической памятью: указатели.

36

Работа со структурами данных

Возможность выделения и освобождения области памяти позволяет создавать структуры данных с переменным числом элементов - динамические структуры. Чаще всего используют т. н. связанные структуры, когда среди элементов устанавливается некоторая иерархия, например наподобие генеалогического дерева. Среди таких структур наибольшее распространение в различных практических приложениях получили линейные структуры (списки) и структуры-деревья (более подробно о разнообразии структур см., например, [6,7]. В связных структурах обычно используются однотипные элементы. Каждый элемент имеет две различные части:

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

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

Наиболее удобно для фиксации такой информации использовать тип-запись. Однако при задании такого типа элемента возникает определенная трудность, связанная с тем, что этот тип должен содержать тип-указатель на элемент структуры, который, в свою очередь, нельзя определить, пока не определен тип элемента. При этом, в какой бы последовательности ни определялись эти типы, будет нарушено правило, гласящее, что использовать можно только те элементы программы, которые определены ранее. Для устранения этого препятствия в языке Паскаль сделано исключение из указанного правила по отношению к двум типам данных, один из которых является типом-указатель на объект второго типа.