函数'void addBook()'的参数错误太多

时间:2015-03-29 11:27:56

标签: c++

我一直在这里得到这个错误,我试图解决它,但没有任何工作。任何人都可以帮我弄清楚我做错了什么?

int main()
{

FILE *fp;

if ((fp = fopen("C:books.dat", "rb")) == NULL) {

    printf("This file does not exist, Please add books ......\n");
     for (i=0; i< SIZE; i++)
        addBook(i);
}




delay = getchar();
delay = getchar();
 }

这是针对C ++程序的,我正在尝试创建一个库,也使用文件处理

1 个答案:

答案 0 :(得分:2)

您收到该错误是因为您将该函数称为

addBook(i);

但最有可能的是,你的函数定义类似于

void addBook()

你需要在它的定义中传递一个参数。你应该把它改成

void addBook ( int i )

或类似内容,或者从

中删除i
    addBook(i);

在看到addBook()的定义后,就像我说的那样。该函数定义为

void addBook()

但是你用

来调用它
addBook(i);

该函数不期望任何参数,但是你用一个参数调用它,这就是造成错误的原因。

除非您需要将i的值发送到函数addBook(),否则应从函数调用中删除i。这应该可以解决编译错误。