Hier werden wir sehen, was der Zweck der Verwendung von Funktionsprototypen in C oder C ++ ist. Die Funktionsprototypen werden verwendet, um dem Compiler die Anzahl der Argumente und die erforderlichen Datentypen eines Funktionsparameters sowie den Rückgabetyp der Funktion mitzuteilen. Anhand dieser Informationen überprüft der Compiler die Funktionssignaturen, bevor er sie aufruft. Wenn die Funktionsprototypen nicht erwähnt werden, wird das Programm möglicherweise mit einigen Warnungen kompiliert und generiert manchmal eine seltsame Ausgabe.
Wenn eine Funktion irgendwo aufgerufen wird, ihr Hauptteil jedoch noch nicht definiert ist, dh nach der aktuellen Zeile definiert ist, kann dies zu Problemen führen. Der Compiler findet nicht, was die Funktion ist und was ihre Signatur ist. In diesem Fall müssen wir Prototypen funktionieren. Wenn die Funktion vorher definiert ist, brauchen wir keine Prototypen.
Beispielcode
#include<stdio.h>main() { function(50);}void function(int x) { printf("The value of x is: %d", x);}
Ausgabe
The value of x is: 50
Dies zeigt die Ausgabe, aber es zeigt eine Warnung wie unten:
conflicting types for 'function' previous implicit declaration of 'function' was here
Now using function prototypes, it is executing without any problem.
Example Code
#include<stdio.h>void function(int); //prototypemain() { function(50);}void function(int x) { printf("The value of x is: %d", x);}
Output
The value of x is: 50