#include<stdio.h>
#include<stdbool.h>
//回调函数:作为函数参数的函数即回调函数
//小于
bool less(int a, int b)
{
return a < b;
}
//大于
bool greater(int a, int b)
{
return a > b;
}
//等于
bool equal(int a, int b)
{
return a == b;
}
typedef bool(*CMPCallBack)(int a, int b);
//回调登记函数
//bool cmp(int a, int b,bool(*mycmp)(int a,int b))//typedef没定义之前的写法
bool cmp(int a, int b, CMPCallBack mycmp)//typedef定义后的简写
{
//return a > b;
return mycmp(a, b);
}
int main()
{
bool ret = cmp(3, 4,equal);
printf("%s\n", ret ? "true" : "false");
bool ret1 = cmp(3, 4, less);
printf("%s\n", ret1 ? "true" : "false");
bool ret2 = cmp(3, 4, greater);
printf("%s\n", ret2 ? "true" : "false");
return 0;
}
作为函数参数的函数即回调函数#include<stdio.h>#include<stdbool.h>//回调函数:作为函数参数的函数即回调函数//小于bool less(int a, int b){ return a < b;}//大于bool greater(int a, int b){ return a > b;}//等于bool equal(int a, int b){ return a == b;}typedef...