Several declarations involving pointers
int *p; /* p is a pointer to an integer quantity */
int *p[10] ; /* p is a 10-element array of pointers to integer quantities */
int(*p)[10] ; /* p is a pointer to a 10-element integer array */
int *p(void) ; /* p is a function that returns a pointers to an integer quantity */
int p(char *a) ; /* p is a function that accepts an argument which is a pointer to a character return s an integer quantity */
int *p(char a*) ; /* p is a function that accepts an argument which is a pointer to a character returns a pointer to an integer quantity */
int (*p) (char *a) ; /* p is a pointer to a function that accepts an argument which is a pointer character returns an integer quantity */
int (*p(char *a))[10] ; /* p is a function that accepts an argument which is a pointer to a
character returns a pointer to a 10-element integer array */
int p(char (*a)[]) ; /* p is a function that accepts an argument which is a pointer to a
character array returns an integer quantity */
int p(char *a[]) ; /* p is a function that accepts an argument which is an array of pointers to
characters returns an integer quantity */
int *p(char a[]) ; /* p is a function that accept an argument which is a character array returns a pointer to an integer quantity */
int *p(char (*a)[]) ; /* p is a function that accepts an argument which is a pointer to a
character array returns a pointer to an integer quantity */
int *p(char *a[]) ; /* p is a function that accepts an argument which is a array of pointers to characters return a pointer to an integer quantity */
int (*p) (char (*a)[]) ; /* p is a pointer to a function that accepts an argument which is a pointer to a character array returns an integer quantity */
int *(*p) (char (*a)[]) ; /* p is a pointer to a function that accepts an argument which is a pointer to a character array returns a pointer to an integer quantity */
int *(*p) (char *a[]) ; /* p is a pointer to a function that accepts an argument which is an array of pointer to character returns to an integer quantity 8/
int (*p[10])(void) ; /* p is a 10-elemnt array of pointer to functions ; each function returns an integer quantity */
int (*p[10])(char a) ; /* p is a 10-element array of pointer to function; each functions accepts an argument which is a character, and returns an integer quantity */
int *(*p[10])(char a) ; /* p is a 10-element array of pointers to functions; each function accepts an argument which is a character, and returns a pointer to an integer quantity */
int *(*p[10])(char *a) ; /* p is a 10-element array of pointer to functions; each function accepts
an argument which is a pointer to a character, and returns a pointer to an integer quantity */