C中的函数指针使用

来源:互联网 发布:java移植安卓 编辑:程序博客网 时间:2024/05/01 03:02

函数指针是指向函数的指针变量。 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。如前所述,C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样,在这些概念上是一致的。函数指针有两个用途:调用函数和做函数的参数。

例:

#include <stdio.h>int max(int x,int y){return x>y?x:y;}int min(int x,int y){return x<y?x:y;}int main(int argc, char* argv[]){int (* ptr[2])(int,int);int a,b;ptr[0]=max;ptr[1]=min;scanf("%d %d",&a,&b);printf("%d/n",ptr[0](a,b));printf("%d/n",ptr[1](a,b));}


0 0
原创粉丝点击