关闭

C语言回调函数实例

标签: Cc语言回调
572人阅读 评论(0) 收藏 举报
分类:
#include <stdio.h>

int a = 0;
void (*fancp)();

void test(void(*fanc)())
{
    a = 1;
    fancp = fanc;//注册
}

void hello()
{
    printf("hello\n");
}

int main(int argc, char** argv)
{
    test(hello);//该行代码在其他c文件中实现才有意义
    printf("%x\n", fancp);//打印fancp的地址,在使用中可以判断fancp的值来确定是否已经注册,fancp==0为没有注册
    (*fancp)();
    return 0;

}


这种实现机制和java 的接口(常见的setListener())是很像的。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:69832次
    • 积分:1081
    • 等级:
    • 排名:千里之外
    • 原创:36篇
    • 转载:1篇
    • 译文:0篇
    • 评论:24条
    最新评论