总结:
函数指针,可以用于定义一个分段函数!
int g(int (*f1)(int), int (*f2)(int), int (*f3)(int), int x) {
if (x <0) {
return f1(x);
}
if (x<100) {
return f2(x);
}
return f3(x);
}
printf("%d\n", g(fac1, fac2, fac3, n))
//g就是一个分段函数,其中fac1,fac2,fac3为分段函数对应的不同段的函数,n为传进去需要处理的整型变量;
int (*f1)(int),代表的也是参数列表的变量,代表传进来一个函数;
传参的时候,不仅可以传一个整形,浮点型,还可以传一个函数
int 代表返回值的类型;
*f1,把某个函数当成一个变量传进来,放进一个函数变量当中
后面的( )里面只需要写函数参数类型即可;
这个足够重要,足够复杂。
一个新的概念产生,它是去解决一类问题的。
函数指针方便去解决类似于分段函数的函数调用;
函数指针可以用于定义一个分段函数!