Библиотечные функции
Функции для манипулирования динамической памятью в стандарте Си следующие:
void *calloc(unsigned n, unsigned size); – выделение памяти для размещения n объектов размером size байт и заполнение полученной области нулями; возвращает указатель на выделенную область памяти;
void *malloc (unsigned n) – выделение области памяти для размещения блока размером n байт; возвращает указатель на выделенную область памяти;
void *realloc (void *b, unsigned n) – изменение размера размещенного по адресу b блока на новое значение n и копирование (при необходимости) содержимого блока; возвращает указатель на перераспределенную область памяти; при возникновении ошибки, например, нехватке памяти, эти функции возвращают значение NULL, что означает отсутствие адреса (нулевой адрес);
coreleft (void) – получение размера свободной памяти в байтах только для MS DOS (используется в Borland C++), тип результата: unsigned – для моделей памяти tiny, small и medium; unsigned long – для моделей памяти compact, large и huge;
void free (void *b) – освобождение блока памяти, адресуемого указателем b.
Для использования этих функций требуется подключить к программе в зависимости от среды программирования заголовочный файл alloc.h или malloc.h.
__________________________________________________________________
В языке С++ введены операции захвата и освобождения памяти new и delete, рассматриваемые в разд. 16.4.
__________________________________________________________________
Дата добавления: 2014-12-30; просмотров: 753;