C语言中的数据类型包含int char等 以及自己可以定义的数据结构。
简单说一下 函数也有他的数据类型 比如:void f(); int k(); int m(int , int);
它们对应的数据类型就是去掉函数名即 void (); int (); int (int, int)。
定义一个int(int)类型的函数指针pFunc即 int (*pFunc)(int); 可不敢写成int *pFunc(int); 根据优先级 就变成int* pFun(int);
对函数指针赋值就可以直接传值例如 int g(int); int (*pg)(int) = g;
最后函数指针定义形式比较复杂但是搞明白了也就简单了。
定义函数指针类型 typedef int (*pFun)(int a ); pFunc 就是函数指针类型了,与数据类型int 等是类似的。
使用时:
int Func (int a);
typedef int (*pFunc)(int);
pFunc ptr_func = Func;
如果有错误请大家指出来我及时改正