尝试将同参数同返回值的函数的入口放进数组中
void (*W_func[4])(void)={W_0,W_1,W_2,W_3};
第一个void表示函数返回空,(*W_func[4])表示一个4个成员的指针数组,指向的就是定义的同参数同返回值的函数,第二个(void)表示函数参数为空,W_0,W_1,W_2,W_3则表示四个函数的名称,需要自行声明并定义,必须满足void参数和void返回值的要求
void (*func)(void);
声明一个func指针,可以指向一个void返回值void参数的函数
调用时代码如下:
int i;
for(i = 0 ; i < 4; i++){
func = W_func[i]; //func和W_func的数组内容同为指向void参数和void返回值的函数指针
(*func)(); //func本身为指针,调用该函数时要加*
}
这样就可以实现循环调用W_func中的几个函数