标题:too many actual parameters?
只看楼主
ppdva
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2010-11-28
 问题点数:0 回复次数:3 
too many actual parameters?
教科书(《C语言程序设计》(第二版)主编 丁亚涛,p174)上照抄的一个程序:

#include <math.h>
#include<stdio.h>
float integeral(double(*funp)(),float a,float b)
{
    float  s,h,y;
    int  n,i;
    s=((*funp)(a)+(*funp)(b))/2.0;  /*[f(a)+f(b)]/2作为求和的初值*/
    n=100;h=(b-a)/n;
    for (i=1;i<n;i++)
        s=s+(*funp)(a+i*h);
    y=s*h;
    return(y);
}
double  f(double x)
{
    return(sqrt(4.0-x*x));
}
main()
{
    float  s1,s2,s3;
    s1=integeral(sin,0.0,3.1415926/2);
    s2=integeral(cos,0.0,3.1415926/2);
    s3=integeral(f,0.0,2.0);
    printf("s1=%f,s2=%f,s3=%f\n",s1,s2,s3);
}
在VC6上编译时候提示“cpp(7) : error C2197: 'double (__cdecl *)(void)' : too many actual parameters”
“cpp(21) : error C2664: 'integeral' : cannot convert parameter 1 from 'double (double)' to 'double (__cdecl *)(void)'
        None of the functions with this name in scope match the target type”
怎么回事?怎么解决?谢谢
搜索更多相关主题的帖子: actual parameters 
2010-11-29 12:57
我菜119
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
帖 子:938
专家分:1756
注 册:2009-10-17
得分:0 
你的这个程序我在vc++上测试并没有出现你说的那些问题,

愿用余生致力编程
2010-11-29 13:07
DreamSkyCC
Rank: 2
来 自:河北赵县
等 级:论坛游民
帖 子:40
专家分:58
注 册:2010-11-28
得分:0 
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
float integeral(double(*funp)(),float a,float b)
{
    float s,h,y;
    int n,i;
    s = ((*funp)(a) + (*funp)(b))/2.0;
    n = 100;
    h = (b-a)/n;
    for(i = 1; i < n; i++)
    {
        s = s+(*funp)(a + i * h);
   
    }
   
    y = s * h;
   

    return (y);
}
double f(double x)
{

    return(sqrt(4.0 - x * x));
}
int main(int argc , char *argv[])
{
    float s1,s2,s3;
    s1 = integeral(sin,0.0,3.1415926/2);
   
    s2 = integeral(cos,0.0,3.1415926/2);
   
    s3 = integeral(f,0.0,2.0);
    printf("s1 = %f,s2 = %f,s3 = %f\n",s1,s2,s3);


    return 0;
}

努力总会有收获!
2010-11-29 13:38
DreamSkyCC
Rank: 2
来 自:河北赵县
等 级:论坛游民
帖 子:40
专家分:58
注 册:2010-11-28
得分:0 
我在linux的gcc下也没问题

努力总会有收获!
2010-11-29 13:38



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-327237-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.113658 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved