命名空间
变体
操作

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 free_sized 函数 (p: 366)

[编辑] 另请参阅

分配对齐的内存
(函数) [编辑]
释放先前分配的内存
(函数) [编辑]
释放先前分配的固定大小的内存
(函数) [编辑]
分配内存
(函数) [编辑]