如何修复"too few arguments to function"?
How to fix "too few arguments to function"?
我的程序如下
#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;
相关文章:
- "error: no matching function for call to"构造函数错误
- 调用专用模板时出错"no matching function for call to [...]"
- "no matching function for call to 'Vector::Vector'"错误
- 不断"Attempting to reference a deleted function"
- 我在 ifstream input_file(文件名)行中收到错误"no matching function to call";
- 模板规范获取'Ambiguous call to overloaded function'
- 从 TVector2 类派生复杂类:"No matching function for call to Complex::Complex()"
- 如何修复"too few arguments to function"?
- "Unidentified reference to '(function)'"错误
- 在 2D 阵列分配期间对 calloc 进行"expression must have (pointer-to) function type"
- From #define to function
- Pass std::max_element() or std::min_element() to function as
- 为什么隐式"lambda to function pointer conversion"禁止"by reference"捕获静态成员?
- 何时使用"pointer to function"和"function pointer"?
- 清"undefined reference to function"
- C++ stringstream string to function(test, char *test2)
- 二进制泛型lambda不匹配ptr-to-function参数
- C-callback to function template:显式实例化模板
- 提升线程中的"too few arguments to function"
- C++ ifstream to function