那位大佬帮我看下这个c++程序那里有问题 这个是大学课本上的一个例子 但是我照着打会报错

#include<iostream>using namespace std;void main(){ int a,b,c; int min(int x,int y); int (*p)(); p=min; cin>>a>>b; c=(*p)(a,b); cout<<"the min is :"<<c<<endl;}int min(int x,int y){ int z; return (x<y?x:y);}

函数指针也要说明参数的类型,给你改了:

#include<iostream>
using namespace std;
void main()
{
int a,b,c;
int min(int x,int y);
int (*p)(int ,int );  //要有参数类型
p=min;
cin>>a>>b;
c=(*p)(a,b);
cout<<"the min is :"<<c<<endl;
}
int min(int x,int y)
{
int z;
return (x<y?x:y);
}

追问

可是课本上写的指针函数的一般格式是:数据类型 (*函数指针变量名)()
并没有说要说明参数类型啊

追答

课本里讲那些是为了应付考试而已,错误太多
真正要学习C语言,不能看课本。

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答