黑马程序员技术交流社区

标题: c语言函数指针问题 [打印本页]

作者: 四季列车    时间: 2014-3-13 22:46
标题: c语言函数指针问题


作者: shenlongzs    时间: 2014-3-14 01:09
typedef int(*Count)(int,int);  
定义了一个返回类型为int,参数为两个int的函数指针;
比如有多个同类型的函数(返回类型为int,参数为两个int),然后根据不同条件将指针指向某具体函数,实现某具体处理。这样做的好处是可以统一处理(执行)一类操作。
如:Count count1=sum;  
      Count count2=min;

作者: 脸皮猴    时间: 2014-3-14 10:34
#include <stdio.h>  
typedef int(*Count)(int,int);//定义一个函数指针变量类型  Count 形参是两个int型数据 返回一个int型数据
  
int sum(int a ,int b){    //定义一个求加法的函数 返回和值
   return a+b;  
}  
int min(int a ,int b){  //定义一个求减法的函数 返回差值
    return a-b;  
}  
int main(){  
    Count count1=sum;  // 定义一个函数指针  count1 ,并且 count1指向sum这个函数
    Count count2=min;  //定义一个函数指针  count2 ,并且 count2指向min这个函数
    printf("%d\n",count1(2,3));  //求2+3的和值 并打印
    printf("%d\n",count2(2,3));  //求2-3的差值 并打印
    return 0;  
}  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2