【发布时间】:2014-01-06 14:54:45
【问题描述】:
我是 C 新手,在理解以下函数的一部分时遇到了一些问题。
简而言之,它将数值 R -> R 函数与矩形方法相结合:
double numint(double (*f)(double), double x1, double x2, double dx)
{
double x, sum = 0;
for (x = x1; x < x2; x += dx)
sum += f(x) * dx;
return sum;
}
我的问题是:
1.) double (*f)(double) 代表什么?我如何调用这部分功能?它是示例中未定义的类型,还是可以单独使用?
例如,exampledouble = numint( ?? , double1, double2, double3);
感谢您的帮助!
【问题讨论】:
-
还可以查看cdecl.org。您可以写一些您不理解的声明并获得英文翻译,反之亦然。对于您的特定陈述,翻译是“将 f 声明为指向函数(双)返回双精度的指针”:)
标签: c function pointers function-pointers