Namespaces
Variants

free_aligned_sized

From cppreference.net
定义于头文件 <stdlib.h>
void free_aligned_sized ( void * ptr, size_t alignment, size_t size ) ;
(C23 起)

如果 ptr 是空指针或通过调用 aligned_alloc 获得的结果,其中 alignment 等于请求的内存对齐方式且 size 等于请求的分配大小,则此函数等效于 free ( ptr ) 。否则,行为是未定义的。

malloc calloc realloc 的调用结果不得传递给 free_aligned_sized

free_aligned_sized 是线程安全的:其行为表现为仅通过其参数访问可见的内存位置,而不访问任何静态存储。

free_aligned_sized 的调用在释放内存区域时,会与后续任何分配同一内存区域或部分相同内存区域的分配函数调用形成同步关系。这种同步发生在释放函数对内存的任何访问之后,以及在分配函数对内存的任何访问之前。对于每个特定内存区域的所有分配和释放函数操作,存在一个单一的全序关系。

目录

参数

ptr - 指向要释放内存的指针
alignment - 要释放内存的对齐方式
size - 要释放内存的大小

返回值

(无)

示例

参考文献

  • C23 标准 (ISO/IEC 9899:2024):
  • 7.24.3.5 free_sized 函数 (p: 366)

参见

分配对齐内存
(函数)
释放先前分配的内存
(函数)
释放先前分配的带尺寸内存
(函数)
分配内存
(函数)