int(*(*v)[ ])();怎么理解?
int *v[5];
往右看,v首先是个数组,往左看,数组里面放的是指针,每个指针指向了int类型【指针数组】
int (*v)[5];
先看括号里面的,v首先是个指针,往右看,指向了5个数组,回到左边,然后数组的类型是int类型【数组指针】
int func();
func是返回型是int的函数
int (*func)();
func是个指针,往右看,是个函数,回到左边,函数的返回类型是int
int(*v[ ])();
往右看,v首先是个数组,往左看,数组里面存放的是指针,往右看,是个函数,回到左边,返回类型是int
即:v是一个数组,数组里面存放了一堆指针,每个指针指向了返回类型是int的函数
int(*(*v)[ ])();
首先v是个指针,往右看,这个指针指向一个数组,往左看,数组里面存放的是指针,
再往右看,是个函数,回到最左边,返回类型是int
即:v是一个(由“指向int型函数指针”组成的数组)的指针