Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Размещение памяти на указанной границе выравнивания.
Синтаксис
void * _aligned_offset_malloc(
size_t size,
size_t alignment,
size_t offset
);
Параметры
size
Размер запрошенного выделения памяти.
alignment
Значение выравнивания, которое должно быть целой степенью числа 2.
offset
Смещение в выделение памяти для принудительного выполнения выравнивания.
Возвращаемое значение
Указатель на выделенный блок памяти или значение NULL в случае сбоя операции.
Замечания
_aligned_offset_malloc можно использовать в ситуациях, когда необходимо выравнивание вложенного элемента, например, если требуется выравнивание вложенного класса.
_aligned_offset_malloc основан на malloc; дополнительные сведения см. в разделе malloc.
_aligned_offset_malloc помечается __declspec(noalias) и __declspec(restrict)означает, что функция гарантированно не изменяет глобальные переменные и что возвращаемый указатель не является псевдонимом. Дополнительные сведения см. в разделах noalias и restrict.
Эта функция задает для errno значение ENOMEM в случае сбоя выделения памяти или если запрошенный размер был больше _HEAP_MAXREQ. Дополнительные сведения о , см. в errnoразделеerrno , _doserrno_sys_errlistи _sys_nerr. Кроме того, _aligned_offset_malloc проверяет свои параметры. Если alignment значение не равно 2, или offset если значение не равно нулю и больше или равно size, эта функция вызывает обработчик недопустимых параметров, как описано в разделе проверки параметров. Если продолжение выполнения разрешено, эта функция возвращает NULL и задает для errno значение EINVAL.
По умолчанию глобальное состояние этой функции ограничивается приложением. Чтобы изменить это поведение, см . статью "Глобальное состояние" в CRT.
Требования
| Маршрут | Обязательный заголовок |
|---|---|
_aligned_offset_malloc |
<malloc.h> |
Пример
Дополнительные сведения см. в разделе _aligned_malloc.