#include <stdio.h>
#include <stdlib.h>
//创建带有函数指针做参数的函数框架api
//调用者要先实现回调函数
//调用者再去调用函数框架
//所谓的回调是指 调用者去调用一个带有函数指针做参数的函数框架,函数框架反过来要调用调用者提供的回调函数
int add_CB(int a, int b)
{
return a + b;
}
int sub_CB(int a, int b)
{
return a - b;
}
int FrameFuc(int (*mycbfuc)(int, int), int fram_a, int fram_b)//创建带有函数指针做参数的函数框架
{
int c = mycbfuc(fram_a * 10,fram_b *10);
return c;
}
int main(int argc, const char * argv[])
{
//调用者去调用函数框架,要先实现回调函数
int c = FrameFuc(add_CB, 1, 2);
printf(“c= %d\n”, c);
c = FrameFuc(sub_CB, 1, 2);
printf(“c= %d\n”, c);
return 0;
}
结果: