40 different allocation functions give 40 different call sites
void f00(size_t sz) { void* ptr = malloc(sz); free(ptr); }
void f01(size_t sz) { void* ptr = malloc(sz); free(ptr); }
...
void f39(size_t sz) { void* ptr = malloc(sz); free(ptr); }
An array of those allocation functions. How I need to define?
like this: why (size_t)
?:
void (*allocators[])(size_t) = { &f00, &f01, ... , &f39 };
or
void* allocators[] = { &f00, &f01, ... , &f39 };
and what the difference between this two declarations?