_freea

Отмена выделения или свободены блока памяти.

void _freea( 
   void *memblock 
);

Параметры

  • memblock
    Ранее выделенный блок памяти.

Возвращаемое значение

Отсутствует.

Заметки

_freeaблок памяти (освобождает функцииmemblock), который ранее выбрать вызовом _malloca._freea проверяет, если память выделена в куче или в стеке.Если она была выбрана в стеке, _freea не выполняет никаких действий.Если она была выбрана в куче, то число освобоженных байтов, эквивалентное числу запрошенных байтов, если блок был установлен.If memblock существует NULLуказатель, а не учитывается _freea немедленно завершает работу.Попытка высвободить недопустимый указатель (указатель на блок памяти, который не был выбран by _malloca) может повлиять на последующие запросы распределения и вызывать ошибки.

_freea вызовы free для внутреннего использования, если она обнаруживает, что память выделяется в куче.Ли память в куче или в стеке определяет меткой помещенной в памяти по адресу непосредственно перед выделенной памяти.

При возникновении ошибки в освобождение памяти; errno набор со сведениями из операционной системы на природе сбоя.Дополнительные сведения см. в разделе errno, _doserrno, _sys_errlist и _sys_nerr.

После блока памяти был освобождается, _heapmin свернуть объем свободной памяти в куче путем слияния неиспользуемые области и освобождение их обратно в операционной системе.Освобоженная освобождена память, не в операционной системе восстановлена до бесплатного пул и доступен для повторного распространения.

Вызов _freea сопроводить все вызовы _malloca.Также ошибка, вызываемый _freea дважды в одной и той же памяти.При связывании с отладочной версией библиотеки времени выполнения языка c, в частности с _malloc_dbg включенные функции путем указания _CRTDBG_MAP_ALLOCпроще найти отсутствующие или дублированные вызовы _freea.Дополнительные сведения об управляемой куче во время процесса отладки см. в разделах Куча отладки для CRT.

_freea помечает __declspec(noalias), чтобы гарантированно изменяет функция глобальные переменные.Дополнительные сведения см. в разделе noalias.

Требования

Функция

Обязательный заголовок

_freea

<stdlib.h> и <malloc.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Пример

См. пример _malloca.

Эквивалент в .NET Framework

Неприменимо. Для c# используйте стандартная функция PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Выделение памяти

_malloca

calloc

malloc

_malloc_dbg

realloc

_free_dbg

_heapmin