标题:[求助] 关于指向函数的指针的问题
取消只看楼主
冷酷到底
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-9-30
 问题点数:0 回复次数:2 
[求助] 关于指向函数的指针的问题

我在书上看到这条程序,在TC上执行出错,请问哪里错了,应怎样改进阿?? main() { int arr_add(int arr[],int n); static int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int *p,total1,total2; int(*pt)( ); pt=arr_add;//这里出了什么问题啊? p=a[0]; total1=arr_add(p,12); total2=(*pt)(p,12); printf("total=%d\ntotal2=%d\n",total1,total2); }

arr_add(int arr[],int n) { int i,sum=0; for(i=0;i<n;i++) sum=sum+arr[i]; return(sum); }

[此贴子已经被作者于2005-9-30 9:50:22编辑过]

搜索更多相关主题的帖子: 指针 函数 
2005-09-30 09:49
冷酷到底
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-9-30
得分:0 

楼上的用的是什么编译器阿? 我用BCB运行时有错: main() { int arr_add(int arr[],int n); static int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int *p,total1,total2; int(*pt)( ); pt=arr_add; // Cannot convert 'int (*)(int *,int)' to 'int (*)()' p=a[0]; total1=arr_add(p,12); total2=(*pt)(p,12); // Extra parameter in call printf("total=%d\ntotal2=%d\n",total1,total2); }

arr_add(int arr[],int n) { int i,sum=0; for(i=0;i<n;i++) sum=sum+arr[i]; return(sum); }


2005-09-30 14:21
冷酷到底
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2005-9-30
得分:0 
谢谢!

2005-09-30 15:28



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




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

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