直接看代码
#include <stdio.h>
typedef int (* P_PRINT)(int); //先定义函数指针类型
int fun1(int i)
{
return i;
}
int fun2(int i)
{
return i;
}
int fun3(int i)
{
return i;
}
int main()
{
P_PRINT p_print[3];//定义函数指针变量,这个地方也可以直接定义
int (*p_print[3])(int);//这个和上边的定义是一个效果,不过上边的定义可以重复使用
int i = 0;
p_print[0] = fun1;
p_print[1] = fun2;
p_print[2] = fun3;
for(i = 0; i < 3; i++)
{
printf("resutl is %d\n",(*p_print[i])(i));
}
return 0;
}