Поделиться через


_aligned_msize_dbg

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

Синтаксис

size_t _aligned_msize_dbg(
   void *memblock,
   size_t alignment,
   size_t offset
);

Параметры

memblock
Указатель на блок памяти.

alignment
Значение выравнивания, которое должно быть целой степенью числа 2.

offset
Смещение в выделение памяти для принудительного выполнения выравнивания.

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

Возвращает размер (в байтах) как целое число без знака.

Замечания

Значения alignment и offset должны совпадать со значениями, которые были переданы функции, выделившей блок.

_aligned_msize_dbg — это отладочная версия _aligned_msize функции. Если _DEBUG не определено, каждый вызов _aligned_msize_dbg уменьшается до вызова _aligned_msize. Обе функции, _aligned_msize и _aligned_msize_dbg, вычисляют размер блока памяти в основной куче, но _aligned_msize_dbg добавляет функцию отладки: она включает в возвращаемый размер буферы с обеих сторон пользовательской части блока памяти.

Эта функция проверяет свои параметры. Если memblock имеет значение NULL или alignment не имеет значения 2, _msize вызывается недопустимый обработчик параметров, как описано в разделе проверки параметров. Если ошибка обработана, функция задает для параметра errno значение EINVAL и возвращает -1.

Сведения о выделении, инициализации и управлении блоками памяти в отладочной версии базовой кучи см. в сведениях об отладочной куче CRT. Сведения о типах блоков выделения и их использовании см. в разделе "Типы блоков" в куче отладки. Сведения о различиях между стандартными функциями кучи и их версиями отладки см. в разделе "Отладка версий функций выделения кучи".

Требования

Маршрут Обязательный заголовок
_aligned_msize_dbg <crtdbg.h>

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

Библиотеки

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

См. также

Распределение памяти