用变量a给出下面的定义:
a.一个整型数
int a;
b.一个指向整型数的指针
int *a;
c.一个指向指针的指针,它指向的指针是指向一个整型数的
int **a;
d.一个有10个整型数的数组
int a[10];
e.一个有10个指针的数组,该指针是指向一个整型数的
int *a[10];
f.一个指向有10个整型数数组的指针
int (*a)[10];
g.一个指向函数的指针,该函数有一个整型参数并返回一个整型数
int (*a)(int);
h.一个有10个指针的数组该指针指向一个函数,该函数有一个整型参数并返回一个整型数
int (*a[10])(int);
扩展知识:解读复杂指针声明
使用右左法则:首先从最里面的圆括号看起,然后往右看,再往左看。每当遇到圆括号时,就应该调转阅读方向。一旦解析完括号里面所有的东西,就跳出圆括号。重复这个过程,直到整个声明解析完毕。