занесение в эту ячейку конкретного значения.
Удаление из памяти предполагает открепление адреса ячейки ОП от
имени переменной.
С точки зрения времени жизни, переменные могут быть:
1.
Статические, связываются с ячейкой на
стадии компиляции и
остаются связанными с той же ячейкой до конца выполнения программы
(глобальные);
Достоинства: эффективная прямая адресация;
при выполнении
программы не затрачивается время на размещение и удаление из памяти.
Недостатки:
уменьшается
гибкость
программирования;
не
поддерживаются рекурсии; невозможность совместного использования
одной и той же ячейки.
В языках FORTRAN-1, -2, -4 все переменные были статическими. В
языках С, С++, Java реализовано гибкое управление
памятью посредством
специальных модификаторов. Например, для объявления статических
переменных существует модификатор stаtic.
2.
Динамические. Это безымянные ячейки из, так называемой, «кучи»,
размещаемые и удаляемые с помощью явных команд периода выполнения,
которые определяются программистом. При этом связывание с памятью –
динамическое, связывание с типом – статическое.
Обращаться к таким
переменным возможно только с помощью указателей и специальных
функций. Например, в языке С, такими функциями являются malloc() для
распределения памяти и free() для удаления.
Пример 4.
int *intnode; /* intnode - указатель*/
intnode = malloc() /*связывает ячейку - помещает адрес ячейки в
указатель*/
Do'stlaringiz bilan baham: