Please highlight the difference between the following function declarations:
void (*p) (void *a[], int n)
void *(*p[]) (void *a, int n)
void (*p) (void *a[], int n)
defines a pointer to a function that takes a void*
array and an int
as parameter
void *(*p[]) (void *a, int n)
defines an array of pointers to functions that return a void*
, and take a void*
and an int
as parameter.