_aligned_malloc_dbg

Выделяет память для указанной границы выравнивания с пробелом для заголовка отладки и перезапишет буферы (отладочные версии).

void * _aligned_malloc_dbg(
    size_t size, 
    size_t alignment,
   const char *filename,
   int linenumber 
);

Параметры

  • [входящий] size
    Размер выделения памяти.

  • [входящий] alignment
    Значение выравнивания, которое должно быть мощью целого числа 2.

  • [входящий] filename
    Указатель на имя исходного файла, запросившего операцию или NULL распределения.

  • [входящий] linenumber
    Номер линии в исходном файле, где была запрошена операция выделения или NULL.

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

Указатель на блок памяти, который был выбран или NULL если операция завершилась с ошибкой.

Заметки

_aligned_malloc_dbg отладочная версия _aligned_malloc функция.После _Отладка не определяет каждый вызов _aligned_malloc_dbg уменьшает к вызову _aligned_malloc.Оба _aligned_malloc и _aligned_malloc_dbg выберите блок памяти в куче, но базовой _aligned_malloc_dbg есть несколько функций отладки: буферы с обеих сторон части пользователя блока, который необходимо проверять и утечки filename/linenumber сведения, чтобы указать начало координат запросов выделения.

_aligned_malloc_dbg выделяет блок памяти с немного больше места, чем запрошено size.Дополнительное пространство используется диспетчером отладочной кучи для связывания блоки памяти, отладки и предоставить приложению отладочные данные заголовка и перезаписать буферы.При выборе части блока пользователя блока заполняется значением 0xCD и каждый из буферов, чтобы переписать заполнено 0xFD.

_aligned_malloc_dbg наборы errno В ENOMEM , если выделение памяти завершается неудачей или при необходимости объем памяти (включая дополнительную нагрузку, упомянутые ранее) превышает _HEAP_MAXREQ.Дополнительные сведения об этом и других кодах ошибок см. в разделе errno, _doserrno, _sys_errlist и _sys_nerr.Кроме того, _aligned_malloc_dbg проверяет параметры.If alignment не является степенью числа 2 или size ноль, эта функция вызывает обработчик недопустимого параметра, как описано в разделе Проверка параметров.Если выполнение может быть продолжено, то эта функция возвращает NULL и наборы errno В EINVAL.

Сведения о том, как блоки памяти, выделенные инициализируются и управляемые в отладочной версии базовой кучи см. в разделе Управление памятью и куча отладки.

Дополнительные сведения о типах блока распределения и способы их использования см. в разделе Типы блоков в куче отладки.

Требования

Процедура

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

_aligned_malloc_dbg

<crtdbg.h>

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

Библиотеки

Отладочные версии Библиотеки времени выполнения C только для чтения.

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

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

См. также

Ссылки

Подпрограммы отладка