Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Лабораторная работа N 12

 

Динамические переменные

 

Цель и задача работы: научиться создавать, использовать и уничтожать динамические переменные (ссылки).

В данной работе требуется реализовать:

а) лабораторную работу номер 11 «Файлы. Работа с текстом» с помощью динамических переменных, т.е. сначала из файла считываются все данные в память, обрабатываются и затем записываются в файл;

б) лабораторную работу номер 6 «Многомерные массивы» с помощью динамических переменных.

Продемонстрировать знание различных схем работы с памятью:

NEW – DISPOSE, GETMEM – FREEMEM, SETLENGTH с параметром-открытым массивом.

 

Теоретические положения

 

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

В языке программирования Паскаль для работы с динамическими объектами предусмотрен специальный тип значений - так называемый ссылочный тип. Значением этого типа является ссылка на какой-либо программный объект, по которой осуществляется непосредственный доступ к этому объекту. На машинном языке такая ссылка как раз и представлятся указателем места в памяти (адреса), соответствующего объекта.

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

^ (или стрелка вверх) - признак ссылочного типа

формат описания:

тип-POINTER - " ^" идентификатор-типа.

Для переменных ссылочного типа определены следующие процедуры:

NEW(P); - создает динамическую переменную P

DISPOSE(P); - уничтожает динамическую переменную P

В некоторых случаях возникает необходимость в качестве значения указателя принять ссылку, которая не связывает с данным указателем никакого объекта, т.Е. " Пустую ссылку" - NIL.

<== предыдущая лекция | следующая лекция ==>
Создание и изменение фигур | Силовые качества




© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.