[英]Calling a function as a variable in another function
我對C編程有點陌生,我正在嘗試將函數與梯形規則集成在一起。 我的功能是這樣的:
extern double integrate_trapezoid(double function,double min, double max, double subdivisions)
{
double h = (max-min)/subdivisions;
s=0;
for (k=0; k < (subdivisions) ; k++)
{
s = s + (h/2) * (function(min + k*h) + function(min + (k+1)*h));
}
return s;
}
我的問題是如何將通用函數傳遞給該函數? 我希望這個integration_trapezoid函數能夠集成我需要的任何函數。
謝謝! 奧馬爾
您將function
作為函數指針傳遞。
例如
double integrate_trapezoid(double (*function)(double),double min, double max, double subdivisions)
{
...
(*function)(someValue);
...
}
...
double someFunction(double value) { ... }
...
integrate_trapezoid(&someFunction, ...);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.