变量 p 对应的声明如下:
1. int p; // An integer 2. int p[5]; // An array of 5 integers 3. int *p; // A pointer to an integer 4. int *p[10]; // An array of 10 pointers to integers 5. int **p; // A pointer to a pointer to an integer 6. int (*p)[3]; // A pointer to an array of 3 integers 7. int (*p)(char *); // A pointer to a function a that takes an integer 8. int (*p[5])(int); // An array of 5 pointers to functions that take an integer argument and return an integer