C语言中的函数指针
#include<stdio.h> int fun1(int a) { return a*a; } int fun2(int a) { return a*a*a; } int result(int a,int (*f)(int)) { return f(a); } void main() { int a,t; scanf("%d",&a); t=result(a,fun1); printf("%d ",t); t=result(a,fun2); printf("%d ",t); }
这个函数用了C语言中的函数指针,它的使用使得函数result可以用来实现不同函数的求值运算。运行结果如下
root@datas-server:/tmp# ./test 5 25 125