Menu Home

Бесплатная техническая библиотека для любителей и профессионалов Бесплатная техническая библиотека


Информатика и информационные технологии. Ссылочный тип данных. Динамическая память. Динамические переменные. Работа с динамической памятью (самое важное)

Конспекты лекций, шпаргалки

Справочник / Конспекты лекций, шпаргалки

Комментарии к статье Комментарии к статье

Оглавление (развернуть)

16. Ссылочный тип данных. Динамическая память. Динамические переменные. Работа с динамической памятью

Статической переменной (статически размещенной) называется описанная явным образом в программе переменная, обращение к ней осуществляется по имени. Место в памяти для размещения статических переменных определяется при компиляции программы. В отличие от таких статических переменных в программах, написанных на языке Pascal, могут быть созданы динамические переменные. Основное свойство динамических переменных заключается в том, что они создаются, и память для них выделяется во время выполнения программы.

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

Cсылочный тип (указатель) определяет множество значений, которые указывают на динамические переменные определенного типа, называемого базовым типом. Переменная ссылочного типа содержит адрес динамической переменной в памяти. Если базовый тип является еще не описанным идентификатором, то он должен быть описан в той же самой части описания типов, что и тип-указатель.

Зарезервированное слово nil обозначает константу со значением указателя, которая ни на что не указывает.

Приведем пример описания динамических переменных.

var p1, p2: ^real;

p3, p4: ^integer;

...

Процедуры и функции работы с динамической памятью

1. Процедура New{var p: Pointer).

Выделяет место в динамической области памяти для размещения динамической переменной p", и ее адрес присваивает указателю p.

2. Процедура Dispose(var p: Pointer).

Освобождает участок памяти, выделенный для размещения динамической переменной процедурой New, и значение указателя p становится неопределенным.

3. Процедура GetMem(var p: Pointer; size: Word).

Выделяет участок памяти в heap-области, присваивает адрес его начала указателю p, размер участка в байтах задается параметром size.

4. Процедура FreeMem(varp: Pointer; size: Word).

Освобождает участок памяти, адрес начала которого определен указателем p, а размер - параметром size. Значение указателя p становится неопределенным.

5. Процедура Mark{var p: Pointer) записывает в указатель p адрес начала участка свободной динамической памяти на момент ее вызова.

6. Процедура Release(var p: Pointer) освобождает участок динамической памяти, начиная с адреса, записанного в указатель p процедурой Mark, т. е. очищает ту динамическую память, которая была занята после вызова процедуры Mark.

7. Функция MaxAvail: Longint возвращает длину в байтах самого длинного свободного участка динамической памяти.

8. Функция MemAvail: Longint возвращает полный объем свободной динамической памяти в байтах.

9. Вспомогательная функция SizeOf(X):Word возвращает объем в байтах, занимаемый X, причем X может быть либо именем переменной любого типа, либо именем типа.

Автор: Цветкова А.В.

<< Назад: Модули. Виды модулей

>> Вперед: Абстрактные структуры данных

Рекомендуем интересные статьи раздела Конспекты лекций, шпаргалки:

Аграрное право. Шпаргалка

Социология. Конспект лекций

Эндокринология. Шпаргалка

Смотрите другие статьи раздела Конспекты лекций, шпаргалки.

Читайте и пишите полезные комментарии к этой статье.

<< Назад

Последние новости науки и техники, новинки электроники:

Тающие айсберги создают новые оазисы жизни на дне океана 30.06.2026

Глобальное потепление активно меняет облик нашей планеты, и одним из наиболее заметных его проявлений становится ускоренное таяние ледников в полярных регионах. Этот процесс не только приводит к подъему уровня Мирового океана, но и вызывает цепную реакцию в морских экосистемах, порой создавая неожиданные и парадоксальные последствия. Массовое высвобождение айсбергов из Гренландии - яркий пример того, как климатические изменения перестраивают жизнь в самых глубоких и удаленных уголках океана. Из-за повышения температуры количество айсбергов, откалывающихся от гренландских ледников, стремительно растет. Ученые проанализировали данные за последние 40 лет и установили, что с 2000 года поток ледяных глыб через пролив Фрама увеличился в четыре раза. Об этом сообщает Futurism со ссылкой на исследование специалистов из Технического университета Дании. Такое беспрецедентное нашествие айсбергов представляет серьезную опасность для международного судоходства. Одновременно оно радикально тра ...>>

Робот-тьютор Optio, помошник школьника 30.06.2026

Икусственный интеллект и робототехника все активнее помогают учителям и ученикам, делая обучение более персонализированным и увлекательным. Гуманоидные роботы, способные взаимодействовать с людьми естественным образом, открывают новые возможности для школ, особенно в условиях нехватки педагогических кадров и растущего интереса к технологиям. Одна из таких инновационных инициатив стартовала в американском штате Нью-Йорк. Компания Realbotix запустила своего помощника учителя на базе искусственного интеллекта под названием Optio в Центральном школьном округе Саламанки. Робот выступает в роли тьютора, предлагая персонализированное репетиторство, многоязычную помощь с домашними заданиями и круглосуточную академическую поддержку. По данным Interesting Engineering, проект направлен на повышение вовлеченности учащихся и внедрение передовых технологий в учебный процесс. В рамках пилотной программы школы округа планируют интегрировать человекоподобных роботов в классы. Изначально Optio буд ...>>

Биопрепараты повышают питательную ценность органической гречихи 29.06.2026

В органическом земледелии особое внимание уделяется не только урожайности, но и качественному составу продукции. Потребители все чаще выбирают продукты с высоким содержанием полезных веществ и без следов химических веществ. Исследования показывают, что применение биологических препаратов может существенно улучшить минеральный состав зерновых культур, делая их более ценными с точки зрения питания. В результате полевых экспериментов, проведенных в 2023-2025 годах, ученые установили, что использование биопрепаратов способствует активному накоплению макроэлементов, в частности фосфора и калия, в зерне органической гречихи. Об этом сообщила Леся Крупак из Белоцерковского национального аграрного университета в своей работе "Экологичность и производительность". Наиболее заметный эффект наблюдался при применении гумата калия. В этом случае содержание калия в зерне увеличивалось на 19-21 процент по сравнению с контрольными участками. Такой результат свидетельствует об улучшении работы тра ...>>

Случайная новость из Архива

Органические фотоэлементы с рекордной производительностью 03.12.2018

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

В последние годы в области органических фотоэлектрических систем (ОФС) был достигнут значительный прогресс. В большинстве случаев, органические солнечные фотоэлементы состоят из двух слоев полупроводников - один из них служит донором электронов, а другой - акцептором, или проводником электронов. В противоположность кремниевым элементам, которые получают из расплава или осаждением в вакууме, слои полимера в ОФС получаются прямым осаждением из раствора на несущую пленку. С одной стороны, это означает сравнительно низкие производственные затраты, а с другой стороны эти гибкие модули проще применять, чем кремниевые, в стесненных городских условиях. Длительное время фуллерены - углеродные наночастицы - считались идеальными акцепторами, однако собственные потери основанных на фуллеренах композитов значительно снижают их эффективность. Таким образом, полученный в Университете Эрлангена - Нюрнберга результат приводит к смене парадигмы в этой области.

Значительные рост эффективности и надежности означает, что печатаемые гибридные ОФС становятся пригодными для коммерческого использования. Однако, для создания прототипов, пригодных для практического применения, технология должна быть перенесена с лабораторных квадратных миллиметров на стандартную площадку в один квадратный сантиметр.

Ученые сумели значительно снизить потери, подстраивая параметры поглощения света, уровни энергии и микроструктуру органических полупроводников. Главной целью этой оптимизации была совместимость донора и акцептора и баланс между плотностью тока и напряжением в цепи, что важно для мощности вырабатываемой энергии.

Другие интересные новости:

▪ Улучшение теплоизоляции окон

▪ Перья древнего пингвина

▪ Защищенный смартфон Ulefone Armor 25T Pro

▪ Портативная камера, которая видит поляризованный свет

▪ Спортсменам вредят любые удары по голове

Лента новостей науки и техники, новинок электроники

 

Интересные материалы Бесплатной технической библиотеки:

▪ раздел сайта Регуляторы тембра, громкости. Подборка статей

▪ статья Этика. Конспект лекций

▪ статья Что такое ООО? Подробный ответ

▪ статья Санитарка. Типовая инструкция по охране труда

▪ статья Детектор металла. Энциклопедия радиоэлектроники и электротехники

▪ статья Нормы приемо-сдаточных испытаний. Сборные и соединительные шины. Энциклопедия радиоэлектроники и электротехники

Оставьте свой комментарий к этой статье:

Имя:


E-mail (не обязательно):


Комментарий:





Главная страница | Библиотека | Статьи | Карта сайта | Отзывы о сайте

www.diagram.com.ua

www.diagram.com.ua
2000-2026