这里只做简单演示
第一种写法:
typedef void (* funcp_t)(void);
void callback ( void (* Callback)() ) // 函数指针作为参数
{
Callback(); //调用Callback指向的函数
}
void func ()
{
PRINTF("This is a callback function!\n");
}
int main(void)
{
/* Init hardware */
BOARD_InitPins();
BOARD_BootClockRUN();
BOARD_InitDebugConsole();
/*定义函数指针P 并赋值*/
funcp_t P = func;
callback (P);
app_finalize();
return 0;
}
第二种写法:
typedef void (* funcp_t)(void);
void callback ( funcp_t Callback ) // 处理函数传入并转为函数指针类型
{
Callback(); //调用ptos指向的函数
}
void func ()
{
printf ("This is a callback function!\n");
}
int main ()
{
/* Init hardware */
BOARD_InitPins();
BOARD_BootClockRUN();
BOARD_InitDebugConsole();
callback (func);
return 0;
}