10.8. Stolpersteine
- Der Prototyp, die Definition und der Aufruf einer Funktion müssen in der Anzahl, dem Typ und der Reihenfolge der Argumente und Parameter übereinstimmen und zudem den gleichen Rückgabewert voraussetzen.
- Beenden Sie alle Funktionen, die nicht vom Typ void sind, stets mit einer return-Anweisung. Andernfalls ist das Ergebnis der Funktion undefiniert, was bei Funktionsaufrufen innerhalb von Ausdrücken zu "mysteriösen" Fehlern führen kann.
- Parameter sind lokale Variablen, die schon vor dem Funktionskörper definiert werden. Der Versuch, eine lokale Variable zu definieren, die mit einem Parameter namensgleich ist, führt zu einer Fehlermeldung.
- Funktionsdeklarationen müssen mit einem Semikolon abgeschlossen werden; hingegen darf bei Funktionsdefinitionen kein Semikolon nach der Parameterliste stehen. Dieser Fehler ist besonders dann naheliegend, wenn Sie es bevorzugen, die öffnende geschweifte Klammer in eine eigene Zeile zu setzen.
- Der Versuch, Werte aus einer Funktion vom Typ void zurückzugeben, führt zu einer Fehlermeldung.
- Wenn Sie bei der Verwendung von Bibliotheksfunktionen das Einfügen der entsprechenden Header-Datei vergessen, führt dies zumindest zu einer Warnung des Compilers.
- Die return-Anweisung kann nur einen Wert zurückgeben. Der Versuch, damit mehrere Werte an den Aufrufer weiterzureichen, führt zu einer Fehlermeldung.
- Sämtliche Anweisungen nach einem return-Statement werden ignoriert. Der Compiler meldet sich dann mit einer Warnung wie Code has no effect in function xy.