函数指针

//函数指针类型重定义,指向一个函数
typedef void(*app)();//类型重定义
typedef int(*PFUN)(int, int);

void sendShunFeng(){
    printf("发顺丰");
}
void sendYunda(){
    printf("发韵达");
}
void sendYuanTong(){
    printf("发圆通");
}
typedef void (*SEND)();
//秘书
//回调函数就是函数指针作为函数参数,调用时传递对应的函数的地址
//
void assistant(int money, SEND send) {//函数指针用来接收地址
    send();//发快递
}
typedef int (*Guang)(int, int);
int xiaoGuang(int x, int y, Guang guang){//函数指针类型变量名就是要调用的函数的函数名,在主函数中要实现一行代码实现要做的事情
    return guang(x, y);
}




int main(int argc, const char * argv[])
{
    //函数调用时,将对应的函数地址作为参数传入
    //assistant(1,sendShunFeng);
  int value = xiaoGuang(10, 5, minValue);
    printf("%d\n", value);
    printf("%d\n",xiaoGuang(12, 23, maxValue));
    //函数指针:指向函数的指针变量
    //函数使用的三个过程:
    /**
     *1.函数声明(没有函数体)
     2.函数实现(包含:返回值类型,函数名, 行参列表,函数体)
     3。函数调用(函数名+实参列表)
     */
/**
     *  函数指针的定义‘
     定义一个函数指针,指向minvalue函数
     int minvalue(int x,int y);
     p是函数指针变量名
     null是函数指针变量的初值
     int (*)(int x, int y) 函数指针类型
     //定义一个函数指针,名字为p ,指向了一个返回值类型为int,并且有两个整型参数的函数
     */
//    //指针变量赋值,函数地址
//    //函数名代表了函数的首地址
//    p = minValue;//p指向了minvalue函数
//    //当把函数的地址赋给指针变量p之后,指针变量p就可以当作函数名使用</span>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值