Erste Funktion

Wie sieht eine Funktion, also eine Prozedur mit einem Rückgabewert aus? Ein Beipiel hierzu:

// Berechne das Maximum von x und y
int max(int x, int y)
{
    if (x >= y)
        return x;
    else
        return y;
}

Generell besitzen Funktionen den folgenden Aufbau:

rückgabetyp name(typ1 parameter1, typ2 parameter2, ...)
{
    // Variablen und Anweisungen folgen hier

    // Ergebnis zurückgeben (und Funktion verlassen)
    return rückgabewert;
}

Funktionen können nach ihrer Deklaration innerhalb des Programms aufgerufen, also verwendet, werden. In unserem Beispiel wie folgt:

int main()
{
    // Berechne das Maximum zweier Zahlen
    int x = max(4, 2);

    // Gebe das Maximum aus
    cout << "Maximum: " << x << endl;

    // Funktioniert auch so
    cout << "Maximum: " << max(3, 5) << endl;

    return 0;
}

Wir haben wir zwei Mal eine Variable x deklariert. Einmal als Parameter unserer Funktion max, einmal in der Funktion main. Das ist unproblematisch.

Parameter und ihre Namen sind nur gültig innerhalb der Funtkion, in der sie deklariert sind, und Variablen nur innerhalb des Blocks in dem sie deklariert wurden, also den innersten geschweiften Klammern.

Selbständige Programmierung
  • Programmiere eine Funktion, die zwei Zahlen addiert und das Ergebnis zurückliefert.
  • Programmiere eine Funktion, die eine Zahl durch eine zweite teilt. Was passiert bei einer Teilung durch Null? Könnte dem abgeholfen werden?

zurück