Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Void und Rekursion | Funktionen
C-Grundlagen

bookVoid und Rekursion

Der Rückgabetyp void in C

In der Programmiersprache C wird von Funktionen, die mit einem bestimmten Rückgabetyp deklariert sind, erwartet, dass sie eine return-Anweisung enthalten, die einen Wert dieses Typs zurückliefert. Es gibt jedoch Situationen, in denen eine Funktion nichts zurückgeben muss – beispielsweise, wenn sie lediglich Text auf dem Bildschirm ausgibt. In solchen Fällen sollte die Funktion mit dem Typ void deklariert werden.

Main.c

Main.c

copy
12345678910
#include <stdio.h> void func() { printf("This function returns nothing\n"); } int main() { func(); return 0; }

Das Schlüsselwort void gibt an, dass eine Funktion keinen Wert zurückgibt. Es kann auch im Zusammenhang mit Zeigern verwendet werden. Der Versuch, eine Variable vom Typ void zu deklarieren, führt zu einem Fehler, da der Compiler nicht weiß, wie viel Speicher reserviert werden soll.

Main.c

Main.c

copy
1234567
#include <stdio.h> int main() { void variable; return 0; }

Rekursion

C unterstützt die Möglichkeit, dass sich eine Funktion selbst aufruft, eine Technik, die als Rekursion bezeichnet wird.

Man kann sich Rekursion wie das Dehnen und anschließende Loslassen eines Gummibands vorstellen. Sie wird häufig bei mathematischen Operationen eingesetzt, beispielsweise zur Berechnung von Fakultäten.

Fakultäten werden oft verwendet, um Funktionswerte durch die Entwicklung dieser Funktionen in Taylor- oder Maclaurin-Reihen zu approximieren.

Main.c

Main.c

copy
1234567891011121314151617181920
#include <stdio.h> int factorial(int n) { // if n = 0 or 1, because 0! = 1 and 1! = 1 if (n == 0 || n == 1) return 1; // recursion case else return n * factorial(n - 1); } int main() { int n = 3; printf("factorial(%d) = %d\n", n, factorial(n)); return 0; }

Im Zusammenhang mit Rekursion ruft die Funktion sich selbst so lange auf, bis die Bedingung n == 0 || n == 1 erfüllt ist. Sobald diese Bedingung erfüllt ist, werden die Ergebnisse der nachfolgenden Aufrufe der Funktion factorial() in umgekehrter Reihenfolge zurückgegeben, ähnlich wie beim Zusammenfalten einer Ziehharmonika. Sobald Schritt 6 erreicht ist, gibt der ursprüngliche Aufruf von factorial(3) den Wert 6 zurück.

question mark

Stellen Sie sich eine Werbung vor, in der Sie ein Mädchen sehen, das eine Milchflasche hält. Auf dieser Flasche befindet sich ein weiteres Bild desselben Mädchens mit einer Milchflasche, und auf dieser kleineren Flasche ist erneut ein Bild des Mädchens, und so weiter. Wie nennt man dieses Konzept?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 6

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Suggested prompts:

Can you explain more about how recursion works in C?

What are some common mistakes to avoid when using recursion?

Can you give an example of a recursive function in C?

Awesome!

Completion rate improved to 2.63

bookVoid und Rekursion

Swipe um das Menü anzuzeigen

Der Rückgabetyp void in C

In der Programmiersprache C wird von Funktionen, die mit einem bestimmten Rückgabetyp deklariert sind, erwartet, dass sie eine return-Anweisung enthalten, die einen Wert dieses Typs zurückliefert. Es gibt jedoch Situationen, in denen eine Funktion nichts zurückgeben muss – beispielsweise, wenn sie lediglich Text auf dem Bildschirm ausgibt. In solchen Fällen sollte die Funktion mit dem Typ void deklariert werden.

Main.c

Main.c

copy
12345678910
#include <stdio.h> void func() { printf("This function returns nothing\n"); } int main() { func(); return 0; }

Das Schlüsselwort void gibt an, dass eine Funktion keinen Wert zurückgibt. Es kann auch im Zusammenhang mit Zeigern verwendet werden. Der Versuch, eine Variable vom Typ void zu deklarieren, führt zu einem Fehler, da der Compiler nicht weiß, wie viel Speicher reserviert werden soll.

Main.c

Main.c

copy
1234567
#include <stdio.h> int main() { void variable; return 0; }

Rekursion

C unterstützt die Möglichkeit, dass sich eine Funktion selbst aufruft, eine Technik, die als Rekursion bezeichnet wird.

Man kann sich Rekursion wie das Dehnen und anschließende Loslassen eines Gummibands vorstellen. Sie wird häufig bei mathematischen Operationen eingesetzt, beispielsweise zur Berechnung von Fakultäten.

Fakultäten werden oft verwendet, um Funktionswerte durch die Entwicklung dieser Funktionen in Taylor- oder Maclaurin-Reihen zu approximieren.

Main.c

Main.c

copy
1234567891011121314151617181920
#include <stdio.h> int factorial(int n) { // if n = 0 or 1, because 0! = 1 and 1! = 1 if (n == 0 || n == 1) return 1; // recursion case else return n * factorial(n - 1); } int main() { int n = 3; printf("factorial(%d) = %d\n", n, factorial(n)); return 0; }

Im Zusammenhang mit Rekursion ruft die Funktion sich selbst so lange auf, bis die Bedingung n == 0 || n == 1 erfüllt ist. Sobald diese Bedingung erfüllt ist, werden die Ergebnisse der nachfolgenden Aufrufe der Funktion factorial() in umgekehrter Reihenfolge zurückgegeben, ähnlich wie beim Zusammenfalten einer Ziehharmonika. Sobald Schritt 6 erreicht ist, gibt der ursprüngliche Aufruf von factorial(3) den Wert 6 zurück.

question mark

Stellen Sie sich eine Werbung vor, in der Sie ein Mädchen sehen, das eine Milchflasche hält. Auf dieser Flasche befindet sich ein weiteres Bild desselben Mädchens mit einer Milchflasche, und auf dieser kleineren Flasche ist erneut ein Bild des Mädchens, und so weiter. Wie nennt man dieses Konzept?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 5. Kapitel 6
some-alt