free_aligned_sized

来自cppreference.com
< c‎ | memory
在标头 <stdlib.h> 定义
void free_aligned_sized( void* ptr, size_t alignment, size_t size );
(C23 起)

ptr 为空指针或为对 aligned_alloc 的调用结果,其中 alignment 等于所请求的对齐而 size 等于所请求的分配大小,则本函数等价于 free(ptr)。否则,其行为未定义。

malloccallocrealloc 的调用结果不能传递给 free_aligned_sized

free_aligned_sized 是线程安全的:它表现得如同只访问通过其参数可见的内存区域,而非任何静态存储。

解分配一块内存区域的 free_aligned_sized 调用同步于分配同一块或部分相同的内存区域的后续任何分配函数的调用。此同步出现于任何通过解分配函数所作的内存访问之后,和任何分配函数所作出的内存访问之前。所有操作每块特定内存区域的分配和解分配函数拥有单独全序。

参数

ptr - 指向欲接分配内存的指针
alignment - 欲解分配内存的对齐
size - 欲解分配内存的大小

返回值

(无)

示例

引用

  • C23 标准(ISO/IEC 9899:2024):
  • 7.24.3.5 The free_sized function (第 366 页)

参阅

分配对齐的内存
(函数)
归还之前分配的内存
(函数)
归还之前分配的指定大小的内存
(函数)
分配内存
(函数)