指向函数的指针变量定义:
类型说明符 (*指针变量名)(函数参数表列)
int (*pf)(int,int);
通过指针变量调用函数
(*指针变量名)(实参表)
pf=f; /把函数入口地址(函数名)赋值给函数指针
c=(*pf)(a,b); /利用函数指针调用变量
用指向函数的指针作为函数参数
#include<stdio.h>
int plus(int a,int b){
return a+b;
}
int minus(int a,int b){
return a-b;
}
void cal(int x,int y,int(*f)(int,int)){ /
printf("%d",(*f)(x,y)); /调用函数指针指向的函数
}
int main(void){
int x,y;
scanf("%d,%d",&x,&y);
cal(x,y,plus); /plus函数的入口地址传给函数指针变量f;
cal(x,y,minus);
return 0;
}