4.17 posix_memalign()

stdlib.h で定義される posix_memalign() 関数は、メモリの整列割り当てを実行します。

この関数は、POSIX に完全に準拠しています。

構文

int posix_memalign(void **memptr, size_t alignment, size_t size);

使用法

この関数は、 size バイトのメモリを alignment の倍数であるアドレスに割り当てます。
alignment の値は、2 の累乗および sizeof(void *) の倍数である必要があります。
posix_memalign() によって割り当てられたメモリは、標準 C ライブラリの free() 関数を使用して解放できます。

戻り値

返されたアドレスは、 memptr が指す void * 変数に書き込まれます。
関数からの整数の戻り値は、成功時はゼロ、失敗時はエラーコードです。
要求された size および alignment のメモリブロックがない場合、関数は ENOMEM を返し、*memptr の値は未定義になります。
関連情報
Open Group Base Specifications、IEEE Std 1003.1
非機密扱いPDF file icon PDF 版ARM DUI0808CJ
Copyright © 2014, 2015 ARM.All rights reserved.