前进的道路不是一帆风顺的,要随时迎接挑战,敢于战胜困难!

坚持一下,找人聊聊天,释放一些压力!

 

函数指针类型和回调函数

typedef void (*pf)(void*);
void use_cb(pf cb,void*date)
{(*cb)(data);
}
void f1(void* data)
{printf("%s",(char*)data);
}
void main(void)
{use_cb(f1,void*)"hello world!\n");
}


程序中有很多笔误不一一指出。
pf是定义void*为参数void为返回值的函数指针类型,
use_cb有两个参数,第一个是函数指针,第二个是参数数据,函数体执行第一个参数指向的函数,并将第二个参数作为指向函数的参数。
f1是定义的一个可以被pf指向的函数。
main调用的结果是f1("hello world!\n");
这段代码是一段典型的回调函数用法。回调函数的实质是将函数指针作为参数。

posted on 2009-05-14 09:35  山径山精  阅读(479)  评论(0编辑  收藏  举报

导航