搜索
您的当前位置:首页正文

C回调函数

来源:知库网
#include <stdio.h>
typedef void (*pFuncCb) (int);
 
void callback1(int a)
{
    printf("callback function1 is called and parameter = %d\n", a);//打印1
}
void callback2(int a)
{
    printf("callback function2 is called and parameter = %d\n", a);//打印2
}
pFuncCb callback_function;
 
void lowerFunc(int n)
{
    int i;
    for(i = n; i < n+10; i ++)
        if(callback_function) callback_function(i);
}
int main()
{
    callback_function = callback1;
    lowerFunc(1);// 会打印十次 打印1, 1到10
    callback_function =NULL;
    lowerFunc(10);//没有打印。
     
    callback_function = callback2;
    lowerFunc(100);// 会打印十次 打印2, 100到110
     
    return 0;
}
Top