For managing dynamically allocated memory, the standard C library provides the functions malloc(), calloc(), realloc() and free(). In C99 and later, there is also aligned_alloc(). Some systems also provide alloca().
void *aligned_alloc(size_t alignment, size_t size); /* Only since C11 */
voi...