1. 定义
函数指针是指向函数的指针变量。所以“函数指针”本身首先应是指针变量,该指针变量指向函数。
函数指针是指向函数的指针变量,本质是一个指针。而指针函数是返回值为指针的一个函数,本质是一个函数。
2.声明方法
返回值类型 (*指针变量名) (形参列表);
int func(int x); //声明一个函数
int (*f) (int x); //声明一个函数指针
f=func; //将func函数的首地址赋给指针f
3. 实例
#include <stdio.h>
int add(int x, int y);
int sub(int x, int y);
struct ptr {
int (*pTrAdd) (int x, int y);
int (*pTrSub) (int x, int y);
};
int main() {
struct ptr pTr;
pTr.pTrAdd = add;
pTr.pTrSub = sub;
printf("%d, %d", pTr.pTrAdd(1, 2), pTr.pTrSub(2, 1));
return 0;
}
int add(int a, int b) {
return a + b;
}
int sub(int a, int b) {
return a - b;
}
4. typedef和函数指针
https://blog.csdn.net/afei__/article/details/82011613
标签:02,函数,int,pTrSub,函数指针,pTr,指针 From: https://www.cnblogs.com/yyyylllll/p/18462451