#include #include typedef int bool_t; typedef struct array_t array_t; #ifndef TRUE #define TRUE 1 #endif #ifndef FALSE #define FALSE 0 #endif bool_t array_create (array_t **array, size_t element_size); void array_free (array_t **array); void array_delete_tail (array_t **array, size_t n_delete); void * array_get_data (array_t **array, size_t *n_elements); /* append @n_elements elements with undefined content and * return a pointer to the first appended element tail. * * E.g. for an array of integers, do this: * * int *tail; * if (array_append (array, 17, &tail)) * { * * } */ bool_t array_append (array_t **array, size_t n_elements, void *tail);