上来直接看代码:
main()函数里面就是回调函数,实现的功能是:回调函数Calc调用Add实现两个数相加。
实现方法是:在调用Calc后,执行void Calc(int (*p) (int, int))这个函数里面的代码,那么在这个函数名中,*p代表指向调用函数的地址,int (*p)代表Add那么返回值是int,int (*p) (int, int)代表Add里面两个要加的数是int型,在对printf("%d", p(x, y))打印时,就把从键盘输入的x,y值代入Add中进行计算,然后获得return x+y的返回值。
以上是个举例,那么如果想要乘,main函数里面就换成Calc(Mul)。
理解上面的意思在去看回调函数的定义,是不是就清楚了?