在理解“回调函数”以前,必需要了解函数指针函数
函数指针:把指向函数入口地址的指针叫作函数指针(注意:函数指针必需要用括号括起来),好比spa
void Invoke(char *c);指针
void (*fp)(char* s);//声明了一个函数指针(fp)
code
fp = Invoke; //将Invoke函数的入口地址赋值给fp
回调函数
fp("Hellp world") ;//函数指针fp实现函数调用
import
2.回调函数:就是本身定义一个函数,并把这个函数做为另外一个函数的参数,用另外一个函数在运行时调用的函数。gc
//定义带参回调函数
void PrintfText(char* s)
{
printf(s);
}
//定义实现带参回调函数的"调用函数"
void CallPrintfText(void (*callfuct)(char*),char* s)
{
callfuct(s);
}
//在main函数中实现带参的函数回调
int main(int argc,char* argv[])
{
CallPrintfText(PrintfText,"Hello World!\n");
return 0;
}