指向c中的函数?

时间:2015-03-17 09:53:30

标签: c pointers function-pointers

通过以下示例帮助我理解功能指针的最新功能。 我指的是'c'的balagurusamy书,但无法理解这个概念 我也用谷歌搜索,但没有理解这个概念


这是代码

#define PI 3.14
double y(double);
double cos(double);
double table (double(*f)(),double,double,double);
main()
{
    printf("table of y(x)=2*x*x-x+1\n\n");
    table(y,0.0,2.0,0.5);
    printf("\ntable of cos(x)\n\n");
    table(cos,0.0,PI,0.5);
}
double table(double(*f)(),double min,double max,double step)
{
    double a, value;
    for(a=min;a<=max;a+=step)
    {
        value=(*f)(a);
        printf("%5.2f  %10.4f\n",a,value);
    }
}
double y(double x)
{
    return(2*x*x-x+1);
}

如果你能详细解释我对“功能指针”的概念那么它会非常有帮助

1 个答案:

答案 0 :(得分:0)

该功能只是一个机器代码。机器代码只是CPU的数据编码指令的字节。也就是说,在最低级别,代码和数据并没有根本不同。因此,指向代码的概念与指向数据的指针没有太大区别。