标题:【在线==】求救!请教函数指针!
取消只看楼主
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
 问题点数:0 回复次数:5 
【在线==】求救!请教函数指针!
程序代码:
#define N 12
#include 

float arr_add(float arr[],int n)//求数组元素之和
{
int i;
float sum = 0;
for(i=0; i<N; i++)
sum += arr[i];
return sum;
}
float odd_add(float *p,int n)//求下标为奇数的元素之和
{
int i;
float sum = 0;
for(i=0; i<N;I=I+2,P=P+2)
sum = sum + *p;
return sum;
}
void process(float *p,int n,float (*fun)( ))//利用函数地址作参数
{
float result;
result = ( * fun )(p,n);
printf("%8.2f\n",result); 
}

int main()
{
static float a[] = {1.5,3.8,5.6,7.8,91.6,1.61,13.3,15.0,17.5,19.9,21.7,23.0};
float arr_add(),odd_add();
void process(float *p,int n,float(*fun)());
int n = N;
process(a,n,arr_add);
process(a,n,odd_add);
return 0;
}

//运行有错误啊,看来函数指针还是没弄懂,求高手指导下!谢谢!
void process(float *p,int n,float (*fun)( ))此句有错误,
错去信息:error C2197: 'float (__cdecl *)(void)' : too many actual parameters
我是VC的!
搜索更多相关主题的帖子: float sum 函数 int 指针 
2008-04-09 10:09
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
得分:0 
人呢??哎!

我来自偶然! bitter C
2008-04-09 10:27
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
得分:0 
不对!
感觉应该类型放在(*fun)( )后面括号里面

我来自偶然! bitter C
2008-04-09 10:34
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
得分:0 
来人啊!

我来自偶然! bitter C
2008-04-09 11:55
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
得分:0 
谢谢各位!
汗!忘了定义参数类型!

我来自偶然! bitter C
2008-04-09 12:30
lnhaing
Rank: 1
等 级:新手上路
帖 子:111
专家分:0
注 册:2008-1-30
得分:0 
谢谢!sunkaidong

我来自偶然! bitter C
2008-04-09 12:32



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




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

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