下面C语言怎么错了!
来源:百度知道 编辑:UC知道 时间:2024/06/08 17:19:24
下面C语言怎么错了
1》int min(s[51],s[51]) ;提示为too many initializers
以及
2》调用函数min(s[51],s[51])提示为term does not evaluate to a function
;3》d=min(s[51],s[51]) ;提示为term does not evaluate to a function
4》int min( int s[51],int s[51]) 提示为redefinition
1》int min(s[51],s[51]) ;提示为too many initializers
以及
2》调用函数min(s[51],s[51])提示为term does not evaluate to a function
;3》d=min(s[51],s[51]) ;提示为term does not evaluate to a function
4》int min( int s[51],int s[51]) 提示为redefinition
1) int min(s[51], s[51]);这一句,看起来像是函数声明。 首先, 正确的风格是应该采用函数原型。就是说要写清楚参数和返回值类型。你这里没写参数类型。 然后, 两个参数同名了。
2) min(s[51],s[51])这一句是调用么?假设min接受的参数类型是int[],你这里s[51]类型是什么? 是int 。所以这样的调用是通不过的。另外虽然语法上不是错误,但你这里给两个s显然是你自己理解错误
3) 跟上面同样的情况
4) 函数又定义了一次, 这次跟1)类似,但是少了一个错误(因为你毕竟写上参数类型了,有进步) 但是参数名照旧重复
说这些其实都没用,解决一两个错误对你来说毫无意义, 安心去看语法吧,要不就省下时间玩点别的去算了
int min(s[51],s[51])是什么意思
你是想声明min函数,传给它的两个参数是大小为51的数组吗?如果是这样就得像这样写
int s1[51],s2[51]; //假设你要的数组是int型
int min(s1,s2);
不知道 你是用什么 编译的
但是 编译工具 提示的那行错误,不一定 就是 那行错
有可能 那句的 前后 有错
这个在是有的时候min中的s[51]与s[51]会产生混乱
int min(int *s1,int *s2)
在同一个函数中运用两个同样的数组是不合适的,这会造成运用时混乱,使程序出错.没有具体的全过程,我看不明白你的程序是干麻用的,因此只能解释到此了!谅解!