#include <stdio.h>
//callback func
/*
void callback_func(){
printf("-------callback func");
}
void testcall(void (*callback)()){
callback();
}
int main(int argc, char* argv[]){
testcall(callback_func);
return 0;
}
*/
typedef void CALLBACK_FUNC(void);
void callback_func(){
printf("-------callback func");
}
void testcall(CALLBACK_FUNC callback){
callback();
}
int main(int argc, char* argv[]){
CALLBACK_FUNC *FP = callback_func; //CALLBACK_FUNC FP = callback_func; 错误
//因为CALLBACK_FUNC FP是定义函数(相当于函数声明void FP(void);) 而不是函数指针变量
testcall(FP);// testcall(callback_func) ----也可以
return 0;
}
/*
typedef void (*CALLBACK_FUNC)(void);
static CALLBACK_FUNC pCallback = NULL;
void register_callbackfunc(CALLBACK_FUNC callback){
pCallback = callback;
}
void callback_func(){
printf("-------callback func");
}
void testcall(){
pCallback();
}
int main(int argc, char* argv[]){
CALLBACK_FUNC FP = callback_func;
register_callbackfunc(FP);
testcall();
return 0;
}
*/
//callback func
/*
void callback_func(){
printf("-------callback func");
}
void testcall(void (*callback)()){
callback();
}
int main(int argc, char* argv[]){
testcall(callback_func);
return 0;
}
*/
typedef void CALLBACK_FUNC(void);
void callback_func(){
printf("-------callback func");
}
void testcall(CALLBACK_FUNC callback){
callback();
}
int main(int argc, char* argv[]){
CALLBACK_FUNC *FP = callback_func; //CALLBACK_FUNC FP = callback_func; 错误
//因为CALLBACK_FUNC FP是定义函数(相当于函数声明void FP(void);) 而不是函数指针变量
testcall(FP);// testcall(callback_func) ----也可以
return 0;
}
/*
typedef void (*CALLBACK_FUNC)(void);
static CALLBACK_FUNC pCallback = NULL;
void register_callbackfunc(CALLBACK_FUNC callback){
pCallback = callback;
}
void callback_func(){
printf("-------callback func");
}
void testcall(){
pCallback();
}
int main(int argc, char* argv[]){
CALLBACK_FUNC FP = callback_func;
register_callbackfunc(FP);
testcall();
return 0;
}
*/