复杂声明
case 1
cpp
void * ( * (*fp1)(int))[10];fp1是一个指针,指向一个函数,这个函数的参数为int型,函数的返回值是一个指针,这个指针指向一个数组,这个数组有10个元素,每个元素是一个void*型指针。
case 2
cpp
float (*(* fp2)(int,int,int))(int);fp2是一个指针,指向一个函数,这个函数的参数为3个int型,函数的返回值是一个指针,这个指针指向一个函数,这个函数的参数为int型,函数的返回值是float型。
case 3
cpp
int (* ( * fp3)())[10]();fp3是一个指针,指向一个函数,这个函数的参数为空,函数的返回值是一个指针,这个指针指向一个数组,这个数组有10个元素,每个元素是一个指针,指向一个函数,这个函数的参数为空,函数的返回值是int型。
have error: 'fp3' declared as array of functions of type 'int ()'
case 4
cpp
int (*s[10])(int)函数指针数组,每个指针指向一个int func(int param)的函数
case 5
cpp
int id[sizeof(unsigned long)];这个对吗?为什么?
正确 这个 sizeof是编译时运算符,编译时就确定了,可以看成和机器有关的常量。
