0

currentline配列を変更する関数に文字列を送信しようとしていますletterCounter(fullLetterCount.) エラーが発生します

「C2660: 'letterCounter': 関数は 3 つの引数を取りません。」

ただし、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 に答える