c ++函数的参数太少了

时间:2014-12-29 12:31:50

标签: c++

#include <iostream>
using namespace std;
void kghg();
void menu(float kgs);
float kghg(float kilogram, float kgs){
    kilogram=menu(kgs);
    float hektogram;
    hektogram=(kilogram*10);
    return hektogram;
}
int main()
{

    menu();
    kghg()
    return 0;
}
void menu(float kgs){
    cout<<"Input values : ";cin>>kgs;

}
void kghg(){
    float hektogram, kilogram;
    hektogram=kghg(kilogram);
    cout<<"Result : "<<hektogram<<endl;
}

当我尝试编译此代码时,然后显示通知&#34;错误:空值不被忽略,因为它虽然是&#34;和&#34;错误:参数太少&void void menu(float)&#39;&#34;。 请有人帮助我。

1 个答案:

答案 0 :(得分:2)

您将函数menu称为

menu();

虽然声明为

void menu(float kgs)

你说该函数将采用float参数,但没有传递一个。

作为旁注,您似乎正在尝试将cin值转换为kgs。如果您希望此操作符合您的预期,则需要通过引用传递kgs,否则您将输入 kgs的副本的值,然后原始文件将不变。您可以将menu更改为

void menu(float& kgs)

然后将其称为

float kg;    // Declare a float variable
menu(kg);    // Pass that float by reference to your function