在这之前需知道函数指针的用法,比如:
#include "stdafx.h"
void test()
{
printf("Hello World!\n");
}
int main()
{
void (*fun)()=&test;//此处test前面加不加&都能运行正确
(*fun)();
return 0;
}
typedef常用于定义一组函数名,比如一个工程里的几个主要task函数。
typedef void (*TaskFunc)(void);//TaskFunc用来定义函数指针
//个人理解这句话即新建一个类似于int char这种关键字,放在句首来起定义作用。
TaskFunc const Task_Table[5]=
{
Api_task, //定义5个想好的函数名,后面再具体编写这些函数体
Radio_Task,
MainCoreTask,
TimerTask,
CPS_Task,
};
Task_Table[3]();//运行列表中的第三个任务TimerTask
Attention!!!发现调用函数时,第一个例程需要用(*fun),而另一个只需要Task_Table[3],而不是*Task_Table[3],加*编译错误。
#include "stdafx.h"
void test()
{
printf("Hello World!\n");
}
int main()
{
void (*fun)()=&test;//此处test前面加不加&都能运行正确
(*fun)();
return 0;
}
typedef常用于定义一组函数名,比如一个工程里的几个主要task函数。
typedef void (*TaskFunc)(void);//TaskFunc用来定义函数指针
//个人理解这句话即新建一个类似于int char这种关键字,放在句首来起定义作用。
TaskFunc const Task_Table[5]=
{
Api_task, //定义5个想好的函数名,后面再具体编写这些函数体
Radio_Task,
MainCoreTask,
TimerTask,
CPS_Task,
};
Task_Table[3]();//运行列表中的第三个任务TimerTask
Attention!!!发现调用函数时,第一个例程需要用(*fun),而另一个只需要Task_Table[3],而不是*Task_Table[3],加*编译错误。