При использовании данной презентации при объяснении новой темы появляется возможность применять методы личностно-ориентированного обучения: проблемный метод, метод эвристической беседы и элементы исследования. Постановка проблемы ставит учащихся в условия, которые побуждают его решать учебную проблему, проводить анализ материала и оперировать им. Такая деятельность позволяет учащимся получить новую информацию, освоит новые способы применения знаний
dinam_strukturi.ppt
Динамические
структуры
данных
Для практики программирования
важны 2 фактора
(конфликтующих друг с другом):
время выполнения
программы
объем занимаемой памяти.
Изза ограниченности ОП иногда
важнее обеспечить max
экономию памяти даже ценой
потери скоростных
характеристик.
Распределение памяти
Динамическое
Статическое
Память
Память
выделяется на
этапе
компиляции.
выделяется во
время
выполнения
программы.
Для организации динамической
памяти используются
ссылочные типы данных –
указатели.
Указатель (ссылка)
– это переменная, которая в
качестве своего значения
содержит адрес первого
байта памяти, по
которому записаны данные .
Занимает в памяти 4 байта.
Переменной, на которую
указывает указатель не
обязательно присваивать
имя.
К ней можно обращаться
через имя указателя.
Для хранения динамических
переменных выделяется спец.
область памяти, называемая
кучей.
Формат описания указателя
type <имя типа>=^<базовый тип>;
var <имя указателя>:< имя типа>;
или
var <имя указателя>:^<базовый тип> ;
Пример
type ukas = ^integer;
var
p : ukas;
p1 : ^real;
p2 : ^char;
p3 : ^string;
Доступ к переменной
по указателю
осуществляется с помощью правила
разадрессации (разыменования)
указателя:
Пример
p^ := 5;
p1^ :=3.14;
p2^ :=‘$’;
p3^ :=‘Лицей №6’;
new(p);
Динамические процедуры
{отводит место для
хранения динамической
переменной p^ и присваивает её
адрес указателю p}
dispose(p);
память, занимаемую
динамической переменной p^.
После этого значение указателя
p неопределенно –Nil (никуда не
указывает) – const ссылочного типа}
{освобождает
Пример
program Ukasatel;
var p : ^integer;
begin
new(p);
p^:=5;
dispose(p);
end.
p
Nil
Nil
p^
5
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с
договором-офертой сайта. Вы можете
сообщить о нарушении.
Продолжая использовать наш сайт, вы соглашаетесь с политикой использования Cookies. Это файлы в браузере, которые помогают нам сделать ваш опыт взаимодействия с сайтом удобнее.