Funktionen mit Rückgabewert gleichen den Funktionen ohne
Rückgabewert mit einer Ausnahme: mit Aufruf des
Funktionsnamens wird ein Wert an den aufrufenden Programmteil
übergeben. Aus diesem Grunde können Funktionen im
eigentlichen Sinne niemals vom Typ void sein und zählen
damit zu den Ausdrücken.
Syntax: Der Datentyp des zurück zu gebenden Wertes
muß mit dem der Funktion übereinstimmen (Beispiel: soll
ein ganzzahliger Wert zurück gegeben werden, muß die
Funktion vom Typ int sein).
Die Regel bei C/C++ "Wird der Datentyp
weggelassen, ist er standardmäßig int" sollte laut ANSI
Standard nicht mehr verwendet werden!
Um beim späteren aktuellen Aufruf der Funktion einen Wert
zurück zu geben, muß mindestens eine return Anweisung in
ihrem Anweisungsblock vorhanden sein. Der hinter return
angegebene Ausdruck wird zurück gegeben.
Wie bei Funktionen ohne Rückgabewert (s. dort). Allerdings
sollte der Rückgabewert im aufrufenden Programmteil den
zurück gegebenen Wert verwerten, er wird daher in einem
Ausdruck verwendet.
Beispiele: Es gebe eine Funktion Quadrat die Quadratzahl
berechnet aus dem aktuellen Parameter zurück. Zahl = Quadrat(3.0);
printf("%f", Quadrat(3.0));
Es wird Zahl die 9 zugewiesen bzw. die 9 auf der Konsole
ausgegeben.