0

我正在尝试将一个字符串发送currentline到一个函数letterCounter,然后该函数将更改一个数组(fullLetterCount。)我收到错误

“C2660:'letterCounter':函数不接受 3 个参数。”

但它确实需要三个参数。我不知道我是如何格式化这个错误的。

这是我对函数 letterCounter 的调用:

 letterCounter(currentline, fullLetterCount, 26);

这是函数本身的开始:

 void letterCounter(string currentline, int fullLetterCount[], int size){

 }

任何关于我搞砸的想法都会受到重视。(让我知道我的更多代码是否会有所帮助。)

4

1 回答 1

2

您是否检查了声明它的头文件中的函数声明?

根据评论,您已将其声明为不接受任何参数。

您应该正确地将其声明为(在头文件中):

void letterCounter(string currentline, int fullLetterCount[], int size);

当你的书说你不需要命名参数时,它暗示:

void letterCounter(string, int[], int);

...,它也是正确的。然而,这是一种非常糟糕的风格,因为当以后维护代码时,仅通过查看头文件就很难知道参数实际代表什么。

于 2013-08-02T20:10:31.020 回答