int (*a)() a is a pointer to a function returning integer
int (*a[5])() a is array of 5 element pointer to a function returning an integer
int *(*a)() a is a pointer to a function returning an pointer to integer
int (*a)() a is pointer to a function returning to an integer
int *(*a)[10] a is pointer of array of 10 elements returning pointer to an integer