如何修复"too few arguments to function"?

How to fix "too few arguments to function"?

本文关键字:to function arguments few 何修复 too      更新时间:2023-10-16

我的程序如下

#include <iostream>
using namespace std;
int sum(int x,int y)
{
return x+y;
}
int sub(int x,int y)
{
return x-y;
}
int pro(int x,int y)
{
return x*y;
}
int quo(int x,int y)
{
return x/y;
}
int main()
{
int a,b;
char op;
cout<<"Enter two numbers:"<<endl;
cin>>a>>b;
cout<<"Enter a operator:"<<endl;
cin>>op;
switch(op)
{
case '+':
sum(a,b);
cout<<sum()<<endl;
break;
case '-':
sub(a,b);
cout<< sub()<<endl;
break;
case '*':
pro(a,b);
cout<< pro()<<endl;
break;
case '/':
quo(a,b);
cout<< quo() <<endl;
break;
default:
cout<<"Invalid Operator"<<endl;
}
return 0;
}

这是我收到的错误

||=== Build file: "no target" in "no project" (compiler: unknown) ===|
C:UsersamoheDesktopcal.cc||In function 'int main()':|
C:UsersamoheDesktopcal.cc|33|error: too few arguments to function 'int sum(int, int)'|
C:UsersamoheDesktopcal.cc|4|note: declared here|
C:UsersamoheDesktopcal.cc|37|error: too few arguments to function 'int sub(int, int)'|
C:UsersamoheDesktopcal.cc|8|note: declared here|
C:UsersamoheDesktopcal.cc|41|error: too few arguments to function 'int pro(int, int)'|
C:UsersamoheDesktopcal.cc|12|note: declared here|
C:UsersamoheDesktopcal.cc|45|error: too few arguments to function 'int quo(int, int)'|
C:UsersamoheDesktopcal.cc|16|note: declared here|
||=== Build failed: 4 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|

需要解决方案。

如果您阅读了非常清晰的错误消息,包括行号,那么您会注意到它不会抱怨

sum(a,b);

但它确实

抱怨
cout<<sum()<<endl;

差异相当惊人。

您需要为第二个提供足够的参数。
第一个也是无用的,编译器倾向于告诉你,如果你增加警告级别。

解决方案是不仅计算并忽略它,而是通过使用两个代码行的温和混合直接和正确输出它。

cout<<sum(a,b)<<endl;