Definition von Funktionsprototypen in C und C ++

Ein Funktionsprototyp ist eine Deklaration in C und C ++ einer Funktion, ihres Namens, ihrer Parameter und ihres Rückgabetyps vor ihrer eigentlichen Deklaration. Auf diese Weise kann der Compiler eine zuverlässigere Typprüfung durchführen. Da der Funktionsprototyp dem Compiler mitteilt, was zu erwarten ist, ist der Compiler besser in der Lage, alle Funktionen zu kennzeichnen, die nicht die erwarteten Informationen enthalten. Ein Funktionsprototyp lässt den Funktionskörper aus.

Im Gegensatz zu einer vollständigen Funktionsdefinition endet der Prototyp in einem Semikolon. Beispielsweise:

Intgetsum (float * value);

Prototypen werden am häufigsten in Header-Dateien verwendet, obwohl sie an einer beliebigen Stelle in einem Programm vorkommen können. Dadurch können externe Funktionen in anderen Dateien aufgerufen werden und der Compiler kann die Parameter beim Übersetzen überprüfen.

Zwecke

  • Ein Funktionsprototyp stellt sicher, dass Aufrufe an eine Funktion mit der richtigen Anzahl und Art von Argumenten erfolgen.
  • Ein Funktionsprototyp gibt die Anzahl der Argumente an.
  • Es gibt den Datentyp jedes der übergebenen Argumente an.
  • Es gibt die Reihenfolge an, in der die Argumente an die Funktion übergeben werden.

Der Funktionsprototyp teilt dem Compiler mit, was zu erwarten ist, was der Funktion zu geben ist und was von der Funktion zu erwarten ist.

Leistungen

  • Prototypen sparen Zeit beim Debuggen.
  • Prototypen verhindern Probleme, die beim Kompilieren mit nicht deklarierten Funktionen auftreten.
  • Wenn eine Funktionsüberladung auftritt, unterscheiden die Prototypen, welche Funktionsversion aufgerufen werden soll.