最近在(深入理解C指针)的书上看到这么一节代码,
对于我这新手来说,是没见过的!
大家对这个用法熟吗?能说说你们的意见吗?
- typedef int (*operation)(int, int);
- typedef int (*fptrOperation)(int,int);
- operation vector[128] = {NULL};
- int add(int num1,int num2)
- {
- return num1 + num2;
- }
- int sub(int num1,int num2)
- {
- return num1 - num2;
- }
- void initVectorArray(void)
- {
- vector['+'] = add;
- vector['-'] = sub;
- }
- int eva(char opcode,int num1,int num2)
- {
- fptrOperation operation;
- operation = vector[opcode];
- return operation(num1,num2);
- }
- int main(void)
- {
- initVectorArray();
- printf("%d\n",eva('+',5,6));
- printf("%d\n",eva('-',5,6));
- system("pause");
- return 0;
- }
复制代码
|
typedef unsigned int uint_8;
uint_8 x,y;
typedef struct a
{
......
}A;
看来还是太菜了