Zurück zu: C Tutorial
0
Funktionsdeklaration und definition
Aus den vorangegangenen Kapiteln hast du bereits gelernt, dass du eine Funktion folgendermaßen erstellen und aufrufen kannst:
Beispiel
// Create a function
void myFunction() {
printf("I just got executed!");
}
int main() {
myFunction(); // call the function
return 0;
}
Eine Funktion besteht aus zwei Teilen:
- Deklaration: Name der Funktion, Rückgabetyp und Parameter (sofern vorhanden)
- Definition: der Hauptteil der Funktion (auszuführender Code)
void myFunction() { // declaration
// the body of the function (definition)
}
Zur Codeoptimierung wird empfohlen, die Deklaration und die Definition der Funktion zu trennen.
Sie werden häufig C-Programme sehen, bei denen die Funktionsdeklaration über main()
und die Funktionsdefinition unter main()
liegt. Dadurch wird der Code besser organisiert und leichter lesbar:
Beispiel
// Function declaration
void myFunction();
// The main method
int main() {
myFunction(); // call the function
return 0;
}
// Function definition
void myFunction() {
printf("I just got executed!");
}
Was ist mit Parametern?
Wenn wir das Beispiel aus dem Kapitel Funktionsparameter bezüglich Parametern und Rückgabewerten verwenden:
Beispiel
int myFunction(int x, int y) {
return x + y;
}
int main() {
int result = myFunction(5, 3);
printf("Result is = %d", result);
return 0;
}
// Outputs 8 (5 + 3)
Es gilt als bewährte Vorgehensweise, es stattdessen folgendermaßen zu schreiben:
Beispiel
// Function declaration
int myFunction(int x, int y);
// The main method
int main() {
int result = myFunction(5, 3); // call the function
printf("Result is = %d", result);
return 0;
}
// Function definition
int myFunction(int x, int y) {
return x + y;
}