欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

c函数指针

程序员文章站 2022-03-20 15:30:38
```c #include int max(int a, int b){ return a > b ? a : b; } int min(int a, int b){ return a > b ? b : a ; } //把函数指针作为函数的参数,最后一个参数是指针函数 int exe(int a,... ......
#include <stdio.h>

int max(int a, int b){
  return a > b ? a : b;
}

int min(int a, int b){
  return a > b ? b : a ;
}

//把函数指针作为函数的参数,最后一个参数是指针函数
int exe(int a, int b, int(*pf)(int, int)){
  return (*pf)(a,b);
}
int main(){
  int a = 10;
  int b = 30;

  //返回值 函数指针 参数列表                                                    
  int (*pfun)(int, int);

  //方法1                                                                       
  pfun = &max;
  int result = (*pfun)(a, b);
  printf("%d\n", result);
    
  //方法2                                                                       
  pfun = max;
  int r1 = pfun(a, b);
  printf("%d\n", r1);

  //把函数指针作为函数的参数
  int i;
  scanf("%d",&i);
  int (*pf)(int,int);
  if(i){
    pf = &max;
  }else{
    pf = &min;
  }

  int r2 = exe(a, b, pf);
  printf("rs:%d\n", r2);
}