编译是报错 说process 不能执行怎么解决
#include <stdio.h >void main ()
{
int max(int ,int );
int min (int ,int );
int add (int ,int );
voidprocess (int ,int ,int (*fun)());
int a,b ;
printf ("please input two numbers :\n");
scanf ("%d%d",&a,&b);
process (a,b,max);
process (a,b,min);
process (a,b,add);
}
int add(int x,int y)
{
int z;
z=x+y;
printf ("%d",z);
return z;
}
int min(int x,int y)
{
int z;
if (x>y)
{
z=y;
}
else
{
z=x;
}
printf ("%d",z);
return z;
}
int max(int x,int y)
{
int z;
if (x>y)
{
z=x;
}
else
{
z=y;
}
printf ("%d",z);
return z;
} --------------------配置: mingw5 - CUI Debug, 编译器类型: MinGW--------------------
检查文件依赖性...
正在编译 C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp...
C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp:12: error: invalid conversion from `int (*)(int, int)' to `int (*)()'
C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp:12: error: initializing argument 3 of `void process(int, int, int (*)())'
C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp:13: error: invalid conversion from `int (*)(int, int)' to `int (*)()'
C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp:13: error: initializing argument 3 of `void process(int, int, int (*)())'
C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp:14: error: invalid conversion from `int (*)(int, int)' to `int (*)()'
C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp:14: error: initializing argument 3 of `void process(int, int, int (*)())'
C:\Users\susan\Documents\C-Free\Temp\未命名1.cpp:53:2: warning: no newline at end of file
构建中止 未命名1: 6 个错误, 1 个警告
类型转换错误?@阴影中的曙光 首先,推荐用int main()这种形式写主函数;
其次函数的声明推荐写在主函数外,除非你刻意让函数的作用域仅限主函数内;
再其次你声明process()后并没有为其写函数实现; 阴影中的曙光 发表于 2016-3-9 10:10
首先,推荐用int main()这种形式写主函数;
其次函数的声明推荐写在主函数外,除非你刻意让函数的作用域仅限 ...
谢谢你咯{:5_95:}
页:
[1]