转移表就是一个函数指针数组;
前提是需要操作符代码必须是从0开始的整数。
#include <stdio.h>
/*
本测试用例用于说明转移表的作用
*/
typedef int (*PFun)(int, int);
int add(int a, int b)
{
return a + b;
}
int min(int a, int b)
{
return a - b;
}
int(*ops_func[])(int, int) = { add, min }; //函数指针数组
int main_typedef_table(int a, int b, int ops)
{
PFun pFun = ops_func[ops];
int r = pFun(a, b);
printf("result :%d %d %d = %d \n", a, ops, b, r);
return 0;
}
标签:return,ops,int,pFun,C语言,转移
From: https://www.cnblogs.com/lattelover/p/17329442.html