トップページ – C言語編 – 標準ライブラリのリファレンス(名前順)
トップページ – C言語編 – 標準ライブラリのリファレンス(ヘッダ別)
| 概要 |
アラインメント指定付きで、動的にメモリ領域を確保する |
|
| ヘッダ | ||
| 形式 |
void* aligned_alloc(size_t alignment, size_t size); |
|
| 引数 |
alignment |
要求するアラインメント値。実装がサポートしている大きさでなければならない。 |
|
size |
確保する領域の大きさを、バイト単位で指定する。この値は、引数 alignment の倍数でなければならない。 |
|
| 戻り値 |
確保された領域の先頭を指すポインタ。メモリ不足などの要因で失敗した場合には、ヌルポインタが返される。 |
|
| 詳細 |
アラインメント📘を指定できることを除いて、malloc関数と同様。 そもそも、動的メモリ割り当て📘をおこなう標準ライブラリ関数は、どんな型にも適合できるように、適切にアラインメントされたメモリアドレスを割り当てている。aligned_alloc関数は、それを超える大きさのアラインメントが必要な場合に使用する。 確保された領域が不要になったら、free関数で解放📘(システムへ返却)できる。 |
|
| 注意 |
システムがメモリ領域を管理するための追加の領域が必要なため、実際に割り当てられる大きさは、size を超える可能性がある。 割り当てられた領域の状態は不定である。 |
|
| 使用例 |
実行結果:
|
|
| 関連 | ||
| 解説章 | 第37章 | |
本ページはアフィリエイトプログラムによる収益を得ています。
以下のリンクから商品を購入されると、Programming Place 管理者に紹介料が支払われています。
( の直後、) の直前に空白を入れない)return 0; を削除(C言語編全体でのコードの統一)
Programming Place Plus のトップページへ
| はてなブックマーク に保存 | Pocket に保存 | Facebook でシェア |
| X で ポスト/フォロー | LINE で送る | noteで書く |
|
|
管理者情報 | プライバシーポリシー |