POSIX_MEMALIGN(3) | Library Functions Manual | POSIX_MEMALIGN(3) |
posix_memalign
—
aligned memory allocation
#include
<stdlib.h>
int
posix_memalign
(void
**ptr, size_t
alignment, size_t
size);
The
posix_memalign
()
function allocates size bytes of memory such that the
allocation's base address is a multiple of alignment,
and returns the allocation in the value pointed to by
ptr.
The requested alignment must be
a power of 2 at least as large as
sizeof
(void
*).
Memory that is allocated via
posix_memalign
()
can be used as an argument in subsequent calls to
realloc(3),
reallocarray(3) and
free(3), but not
recallocarray(3) and
freezero(3).
The posix_memalign
() function returns the
value 0 if successful; otherwise it returns an error value.
The posix_memalign
() function will fail
if:
The posix_memalign
() function conforms to
IEEE Std 1003.1-2001 (“POSIX.1”).
The posix_memalign
() function first
appeared in OpenBSD 4.8.
May 13, 2017 | OpenBSD-6.4 |