函数指针作为函数参数--举例
#include<stdio.h> void fun(int m) { printf("in fun()\n"); printf("m=%d\n", m); } void call(void (*a)(int), int b) { (*a)(b); printf("in call()\n"); printf("b=%d\n", b); } int main() { call(fun, 10); return 0; }
在这里,call()函数的第一个参数为一个函数指针类型,所以在调用时直接使用fun作为参数就可以了.当然,根据function-to-pointer原则,也可以写成call(*fun, 10);效果是一样的.