Unterschied zwischen Deklaration und Definition in C

Das Hauptunterschied zwischen Deklaration und Definition in C ist das Die Deklaration in C teilt dem Compiler den Namen der Funktion, den Rückgabetyp und die Parameter mit, während die Definition in C die tatsächliche Implementierung der Funktion enthält. Das heißt, die Deklaration liefert dem Compiler Informationen über die Funktion, wohingegen die Definition die eigentlichen Anweisungen der Funktion zur Ausführung einer bestimmten Aufgabe enthält.

C ist eine allgemein strukturierte Programmiersprache. Es verwendet Kontrollstrukturen wie if / else, Wiederholungen wie for-Schleife, while-Schleife und Funktionen. Eine Funktion ist ein Satz von Anweisungen, der hilft, eine bestimmte Aufgabe immer wieder auszuführen. Außerdem ist es möglich, die Funktionen von der Hauptfunktion aus aufzurufen. Nachdem die letzte Anweisung der Funktion ausgeführt wurde, kehrt die Steuerung zur Hauptfunktion zurück. Dieser Artikel beschreibt die Deklaration und Definition von Funktionen in C und vergleicht die Unterschiede zwischen ihnen. Die Funktionsdefinition gibt an, was die Funktion bewirkt, und die Deklaration gibt an, was zur Funktion gehört. es ist ein prototyp.

INHALT

1. Übersicht und Schlüsseldifferenz
2. Was ist Deklaration in C
3. Was ist eine Definition in C?
4. Side-by-Side-Vergleich - Deklaration vs. Definition in C in Tabellenform
5. Zusammenfassung

Was ist Deklaration in C?

Deklaration liefert dem Compiler Informationen über die Funktion. Die Syntax für die Deklaration lautet wie folgt.

Rückgabewert Funktionsname (Parameterliste);

Nehmen Sie eine Funktion an, die die Summe zweier Ganzzahlen berechnet. Die Erklärung lautet wie folgt.

int sum (int num1, int num2);

Der Name der Funktion lautet sum und die Parameter sind zwei ganze Zahlen, nämlich num1 und num2. Diese Funktion gibt eine Ganzzahl zurück. Die vollständige Anweisung endet mit einem Semikolon.

Es ist nicht erforderlich, die Namen der Parameter in die Deklaration aufzunehmen. Daher ist es auch möglich, nur den Datentyp wie folgt zu erwähnen. Es folgt eine gültige Erklärung.

int sum (int, int);

Was ist eine Definition in C??

Die Definition enthält die tatsächlichen Anweisungen der Funktion, um eine bestimmte Aufgabe auszuführen. Die Syntax lautet wie folgt.

return_type Funktionsname (Parameterliste)

// Funktionsanweisungen

Funktionsname hilft bei der Identifizierung der Funktion. Beim Aufrufen einer Funktion werden Werte an diese Funktion übergeben. Diese Werte werden in die Parameter kopiert. Die Parameterliste kann einen oder mehrere Parameter enthalten. Und diese Parameter haben einen Datentyp und einen Namen. Darüber hinaus können auch Funktionen ohne Parameter vorhanden sein.

Die Aussagen der Funktion befinden sich in den geschweiften Klammern. Es ist der Funktionskörper. Nach der Ausführung der Funktion wird ein Wert zurückgegeben. Der Rückgabetyp hängt vom Rückgabewert ab. Wenn die Funktion eine Ganzzahl zurückgibt, ist der Rückgabetyp int. Wenn die Funktion ein Double zurückgibt, ist der Rückgabetyp double usw.

Siehe den Code unten mit Deklaration und Definition einer Funktion.

Abbildung 01: Programm zur Berechnung der Summe zweier Zahlen

Entsprechend dem obigen Programm zeigt Zeile 3 die Deklaration an. Er teilt dem Compiler den Namen der Funktion, Parameter usw. mit. In der Hauptfunktion werden zwei Werte von der Tastatur abgerufen und in den Variablen 'a' und 'b' gespeichert. In Zeile 12 werden diese Werte an die als Summe bezeichnete Funktion übergeben. Dieses 'a' und 'b' sind Argumente.

In Zeile 16 wird die Summenfunktion ausgeführt. Es kopiert den Wert a in num1 und den Wert b in num2. Diese Funktion gibt die Summation zurück und speichert diesen Wert in der Variablen 'ans' (Zeile 12). Zum Schluss wird die Antwort auf dem Bildschirm angezeigt. Kurz gesagt, Zeile 3 zeigt die Deklaration, Zeile 16 bis 18 die Definition.

Was ist der Unterschied zwischen Deklaration und Definition in C??

Deklaration ist ein Prototyp, der den Funktionsnamen und die Typensignatur wie Datentypen, Rückgabetypen und Parameter angibt, den Funktionskörper jedoch weglässt. Definition gibt den Funktionsnamen und die Typunterschriften an, z. B. Datentypen, Rückgabetypen und Parameter, und enthält den Funktionshauptteil. Deklaration informiert den Compiler über den Funktionsnamen und wie er aufgerufen wird. Zum anderen enthält definition die tatsächliche Implementierung der Funktion. Es beschreibt die Aufgabe der Funktion.

Zusammenfassung - Deklaration vs. Definition in C

Der Unterschied zwischen Deklaration und Definition in C besteht darin, dass die Deklaration in C dem Compiler den Namen der Funktion, den Rückgabetyp und die Parameter mitteilt, während die Definition in C die tatsächliche Implementierung der Funktion enthält.

Referenz:

1.Tutorials Punkt. "C-Funktionen".  Tutorials Punkt, 19. März 2018. Hier verfügbar  
2. "Funktionsprototyp". Wikipedia, Wikimedia Foundation, 28. Mai 2018. Hier verfügbar