#include "string.h"
#include "stdio.h"
#include "stdlib.h"
int add(int x, int y) {
int z;
z = x + y;
printf("func add():%d\n", z);
return z;
}
int subtracter(int x, int y) {
int z;
z = x - y;
printf("func subtracter():%d\n", z);
return z;
}
int multiplier(int x, int y) {
int z;
z = x * y;
printf("func multiplier():%d\n", z);
return z;
}
int test(int (*MyOperator)(int, int)) {
MyOperator(2, 1);
return 0;
}
typedef int (*PtrCallbackFuncType)(int, int);
int test2(PtrCallbackFuncType ptrCallbackFuncType) {
ptrCallbackFuncType(2, 3);
return 0;
}
void main() {
int (*pAddFuncVar)(int, int);
pAddFuncVar = add;
test(pAddFuncVar);
pAddFuncVar = subtracter;
test(pAddFuncVar);
pAddFuncVar = multiplier;
test2(pAddFuncVar);
test2(add);
system("pause");
}