Системное программирование в UNIX средствами Free Pascal

       

Управление динамическим распределением памяти


Каждая из программ, рассмотренных ранее, использовала структуры данных, определенные при помощи стандартных объявлений языка Паскаль, например:

var

  x, у: something;

  z: ^something;

  a: array [0..19] of something;

Другими словами, расположение данных в наших примерах определялось во время компиляции. Однако многие вычислительные задачи удобнее решать при помощи динамического создания и уничтожения структур данных, а это значит, что расположение данных в программе определяется окончательно только во время выполнения программы. Семейство библиотечных функций ОС UNIX malloc (от memory allocation – выделение памяти) позволяет создавать объекты в области динамической памяти на стадии выполнения программы, которая в англоязычной литературе часто называется heap – «куча», «кипа» (книг). Функция malloc определяется следующим образом:



Содержание раздела