复杂声明学习总结
声明时可以使用的修饰符:
* 一个指针变量
() 表示一个函数
[] 表示一个数组
声明一个指向特定函数类型的指针,首先声明一个该类型的函数,然后用(*pf)形式的表达式代替函数的名称,其实函数名的本质就是函数的地址!
char* fump(); --> 返回值类型为 char* 的函数;
char (*fump)(); --> 返回值为 char 的函数的指针;
char ( *fump[3] ) ();
--> 由3个指针组成的数组;
--> 指针指向返回值类型为char的函数;
(存放指针的数组 函数指针 返回值类型为char型)
例:
声明:int *( *a[5] ) (int, char*);
返回值类型:int*
函数名:*a[5]
传入参数:(int, char*)
这是一个函数声明,函数名为一个指针数组,返回值为 int 型指针,传入参数为 int 和 char 型指针的函数。
如有错误之处,请留言指出,一起交流学习,谢谢。