КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Краткие итоги. Работа с памятью при использовании динамических структур
Ключевые термины Работа с памятью при использовании динамических структур В программах, в которых необходимо использовать динамические структуры данных, работа с памятью происходит стандартным образом. Выделение динамической памяти производится с помощью операции new или с помощью библиотечной функции malloc (calloc). Освобождение динамической памяти осуществляется операцией delete или функцией free. Например, объявим динамическую структуру данных с именем Node с полями Name, Value и Next, выделим память под указатель на структуру, присвоим значения элементам структуры и освободим память. struct Node {char *Name; int Value; Node *Next }; Node *PNode; //объявляется указатель
PNode = new Node; //выделяется память
PNode->Name = “STO”; //присваиваются значения PNode->Value = 28; PNode->Next = NULL;
delete PNode; // освобождение памяти Адрес сегмента – это одно из машинных слов, составляющих адрес динамического элемента, которое представляет собой адрес первого элемента структуры. Адресное поле (поле связок) – это поле структуры, в котором содержится указатель, связывающий данный элемент с другими элементами структуры. Динамические структуры данных – это структуры данных, память под которые выделяется и освобождается не на этапе компиляции, а в процессе работы программы. Динамический элемент – это элемент динамической структуры, который в конкретный момент выполнения программы может либо существовать, либо отсутствовать в памяти. Динамическое распределение памяти – это выделение памяти под отдельные элементы в тот момент, когда они «начинают существовать» в процессе выполнения программы. Информационное поле (поле данных) – это поле структуры, в котором содержатся непосредственно обрабатываемые данные. Связное представление данных – это установление связи между элементами динамической структуры через указатели. Смещение – это одно из машинных слов, составляющих адрес динамического элемента, которое представляет собой изменение адреса относительно первого элемента структуры. 1. В программах возникает необходимость обрабатывать данные, размер которых заранее неизвестен. 2. Для данных с достаточно большим или переменным размером используются динамические структуры. 3. Динамические структуры не имеют имени, под них выделяется память в процессе выполнения программы, количество их элементов может не фиксироваться, в процессе выполнения программы может меняться характер взаимосвязи между элементами структуры. 4. Каждой динамической структуре ставится в соответствие статическая переменная – ее адрес. 5. Представление динамических структур в памяти определяется как связное. 6. Связное представление данных в программах имеет как достоинства, так и недостатки. 7. Существует классификация динамических структур данных в зависимости от связей между элементами и допустимых операций. 8. Элемент динамической структуры состоит как минимум из двух полей: адресного и информационного. 9. Адресное поле формируется из двух слов: адрес сегмента и смещение. 10. Доступ к данным в динамических структурах осуществляется с помощью операции косвенного выбора.
Дата добавления: 2014-01-04; Просмотров: 628; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |