_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. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.