名前空間
変種
操作

free_aligned_sized

From cppreference.com
ヘッダー <stdlib.h> で定義
void free_aligned_sized( void* ptr, size_t alignment, size_t size );
(C23以降)

もし ptr がヌルポインタであるか、または alignment が要求されたアロケーションアライメントと等しく、 size が要求されたアロケーションサイズと等しい aligned_alloc の呼び出しから得られた結果である場合、この関数は free(ptr) と同等です。それ以外の場合、動作は未定義です。

malloccalloc、または realloc の呼び出しの結果を 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 (p: 366)

[編集] 関連項目

アラインされたメモリを割り当てる
(関数) [編集]
以前に割り当てられたメモリを解放する
(関数) [編集]
以前に割り当てられたサイズのメモリを解放する
(関数) [編集]
メモリを割り当てる
(関数) [編集]
English 日本語 中文(简体) 中文(繁體)