alignedAlloc

This function is similar to glib.global.gmalloc, allocating (n_blocks * n_block_bytes) bytes, but care is taken to align the allocated memory to with the given alignment value. Additionally, it will detect possible overflow during multiplication.

If the allocation fails (because the system is out of memory), the program is terminated.

Aligned memory allocations returned by this function can only be freed using glib.global.alignedFreeSized or glib.global.alignedFree.

void*
alignedAlloc
(
size_t nBlocks
,,
size_t alignment
)

Parameters

nBlocks size_t

the number of blocks to allocate

nBlockBytes size_t

the size of each block in bytes

alignment size_t

the alignment to be enforced, which must be a positive power of 2 and a multiple of sizeof(void*)

Return Value

Type: void*

the allocated memory