Zu viele Argumente für Funktionsfehler in C++

Namita Chaudhary 12 Oktober 2023
  1. Funktionen in C++
  2. der zu viele Argumente zum Funktionieren-Fehler in C++
  3. Beheben Sie den Fehler too many arguments to function in C++
  4. Abschluss
Zu viele Argumente für Funktionsfehler in C++

Beim Schreiben eines Codes stoßen wir auf viele Fehler. Das Lösen von Fehlern ist einer der wichtigsten Teile der Programmierung.

Dieser Artikel behandelt einen Fehler, auf den wir in C++ stoßen: zu viele Argumente, um zu funktionieren.

Funktionen in C++

Das too many arguments to function ist ein Fehler in C++, der uns begegnet, wenn wir bei der Deklaration und der Implementierung einer Funktion unterschiedliche Argumente angeben.

Um diesen Fehler zu verstehen und zu beheben, sollten wir zuerst besprechen, was Funktionen sind.

Eine Funktion ist ein Codeblock, der wiederverwendbar ist und zur Ausführung sich wiederholender Aufgaben verwendet wird. Angenommen, wir möchten in einem Programm fünfmal "Hello World" drucken.

Eine Möglichkeit, dies zu tun, besteht darin, die Anweisung print jedes Mal zu schreiben, wenn wir sie drucken möchten, während die andere effiziente Methode darin besteht, eine Funktion zu erstellen, in der der Code zum Schreiben von "Hello World" geschrieben wird, und Diese Funktion würde aufgerufen, wann immer wir sie brauchen.

Die Funktion, die "Hello World" ausgibt, wird unten implementiert.

#include <iostream>
using namespace std;
void print();
int main() {
  print();
  print();
  print();
  print();
  return 0;
}
void print() { cout << "Hello World" << endl; }

Ausgang:

Hello World
Hello World
Hello World
Hello World

Wenn wir jedoch die Funktion print() nach main() schreiben, müssen wir die Funktion zuerst vor main() deklarieren, damit der Compiler weiss, dass eine Funktion namens print() existiert im Programm.

der zu viele Argumente zum Funktionieren-Fehler in C++

Argumente sind Werte, die beim Aufruf einer Funktion definiert werden. Der Fehler too many arguments to function tritt aufgrund dieser Argumente in einer Funktion auf.

Die Anzahl der Argumente sollte im Funktionsaufruf und in der Funktionsdeklaration eines Programms gleich sein. Wir erhalten diesen Fehler, wenn die Anzahl der Argumente in der Funktionsdeklaration und dem Funktionsaufruf unterschiedlich ist.

Sehen wir uns einen Code an, um darzustellen, was diese verschiedenen Argumente bedeuten. Unten ist das Code-Snippet, das einen Fehler auslöst, der besagt, dass eine Funktion zu viele Argumente enthält.

#include <iostream>
using namespace std;

void addition();

int main() {
  addition(4, 5);
  return 0;
}

void addition(int a, int b) {
  cout << "Addition of the numbers " << a << " and " << b << " = " << (a + b)
       << endl;
}

Ausgang:

./6e359960-d9d7-4843-86c0-b9394abfab38.cpp: In function 'int main)':
./6e359960-d9d7-4843-86c0-b9394abfab38.cpp:7:14: error: too many arguments to function 'void addition)'
  addition4,5);
              ^
./6e359960-d9d7-4843-86c0-b9394abfab38.cpp:4:6: note: declared here
 void addition);
      ^

Im obigen Code-Snippet haben wir die Funktion addition() verwendet, um die beiden Zahlen zu addieren. In der dritten Zeile haben wir die Funktion addition() ohne Argumente deklariert (Argumente stehen in den Klammern einer Funktion).

Wenn wir jedoch die Funktion addition() erstellen oder definieren, haben wir ihr zwei Argumente a und b übergeben, damit diese beiden Zahlen addiert werden können. Daher führt diese Diskrepanz in der Anzahl der Argumente zu den zu vielen Argumenten, um zu funktionieren.

Beheben Sie den Fehler too many arguments to function in C++

Der Fehler zu viele Argumente für die Funktion in C++ kann behoben werden, indem die Anzahl der Argumente berücksichtigt wird, die an die Funktion übergeben werden, wenn sie deklariert und definiert wird.

Nehmen wir das gleiche Beispiel wie oben und beheben den Fehler.

#include <iostream>
using namespace std;
void addition(int, int);
int main() {
  addition(4, 5);
  return 0;
}
void addition(int a, int b) {
  cout << "Addition of the numbers " << a << " and " << b << " = " << (a + b)
       << endl;
}

Ausgang:

Addition of the numbers 4 and 5 = 9

Daher wurde, wie Sie sehen können, der Fehler behoben, und unser Ergebnis der Addition von zwei Zahlen wurde erfolgreich angezeigt. Wir haben gerade die beiden int-Typen zur Deklaration der Funktion in der 3. Zeile hinzugefügt.

Auf diese Weise weiß der Compiler, bevor er auf die Funktion addition() trifft, dass in unserem Programm eine Funktion addition() existiert, die Argumente enthält.

Abschluss

Dieser Artikel hat zu viele Argumente zum Funktionieren behandelt. Wir haben Funktionen kurz besprochen, wie dieser Fehler im C++-Programm auftritt und wie er behoben werden kann.

Die Hauptsache bei der Behebung dieses Fehlers wäre jedoch, dass überall dort, wo die Funktion definiert oder deklariert ist, die gleiche Anzahl von Argumenten vorhanden sein sollte.

Verwandter Artikel - C++ Error