#include<stdio.h> #include<stdlib.h> #include<string.h> int Funcadd(int a, int b) { return a + b; } int Funcplus(int a, int b) { return a - b; } int Funcmul(int a, int b) { return a * b; } int Funcdiv(int a, int b) { return a / b; } typedef int(*MyTypeFunc)(int a, int b); int mainop(MyTypeFunc mypointer) { int temp = mypointer(5,6); return temp; } int mainop2(int(*MyPointFunc)(int a, int b)) { int temp=MyPointFunc(4, 3); return temp; } int main() { int temp1=mainop(Funcadd); printf("%d ",temp1); temp1 = mainop2(Funcadd); printf("%d ", temp1); temp1 = mainop2(Funcplus); printf("%d ", temp1); temp1 = mainop2(Funcmul); printf("%d ", temp1); temp1 = mainop2(Funcdiv); printf("%d ", temp1); system("pause"); }