Funktionen III
oder auch
Funktionen mit Rückgabewerten
Sinn und Zweck
Wir haben bisher gelernt, wie wir ein Programm mit Hilfe von Funktionen modularisieren können. Ebenfalls können wir an unsere Funktionen Parameter übergeben und damit das Verhalten innerhalb einer Funktion steuern.
Aber wie bekommt man Werte wieder raus?
Dazu benötigt man eine Möglichkeit die Funktion ein Ergebnis "zurück-"geben zu lassen, damit man im Computer damit weiterrechnen kann. Daher kommt auch der
Fachbegriff Rückgabewert oder engl.
Return-Value.
Vorüberlegung zum Rückgabewert
Wir nehmen das Beispiel aus dem
vorherigen Kapitel wieder auf:
void fnFunktion ( int iX , int iY ) {
int iErgebnis;
iErgebnis = iX + iY;
}
Wir wir sehen wird das Ergebnis der Addition in der Variable iErgebnis gespeichert. Aufgrund der Überlegungen im Kapitel
Scope existiert diese Variable nur innerhalb der Funktion fnFunktion.
Wenn aber im Hauptprogramm das Ergebnis der Addition verwendet werden soll, dann macht man folgendes
Beispiel mit Rückgabewert
int fnFunktion ( int iX , int iY ) {
int iErgebnis;
iErgebnis = iX + iY;
return iErgebnis;
}
int main(){
int iNeueVariable;
iNeueVariable = fnFunktion( 3 , 4); //<-- Der Rückgabewert wird
//in iNeueVariable gespeichert
}
Beachte: Beim function call müssen die
Parameter in der richtigen Reihenfolge stehen. die
3 wird in iX,
4 in iY abgelegt.
Bei dem obigen Beispiel wird das Ergebnis zwar auch in der Variable iErgebnis gespeichert. Diese Variable wird aber mit Hilfe des Befehls return "zurück-"gegeben.
WICHTIG: Beachte den Datentyp der Funktion, der ist exakt derselbe wie der der Variable, die zurückgegeben wird.
Der Rückgabewert kann dann in einer neuen Variable gespeichert werden.
Dazu muss der Funktionsaufruf auf der rechten Seite einer Zuweisung stehen!Infoblätter und Arbeitsblätter
Funktionen mit RückgabewertenInfo:
Funktionen lassen sich nicht nur mit Werten bestücken (d.h. mit
Parametern) sondern sie können auch etwas zurückgeben. Eine Funktion
mit Rückgabewerten kann benutzt werden, um die Ergebnisse einer
Rechnung an eine andere Funktion zurückzugeben.
Dieses Info-/Arbeitsblatt erklärt das Prinzip und liefert ein paar Übungsaufgaben dazu.