next up previous
Next: Mechanismen für Ausnahmenbehandlungen Up: Ausnahmenbehandlungen Previous: Einführung

Traditionelle Techniken

Es gibt sehr unterschiedliche Techniken zur Unterstützung von Ausnahmenbehandlungen. In Sprachen, die Ausnahmenbehandlungen nicht durch besondere Sprachkonstrukte unterstützen, wird typischerweise eine Technik verwendet, die auf besondere Rückgabewerte oder Statusvariablen beruht. Als Beispiel dafür kann die C-Bibliothek verwendet werden:

/* Fehlerbehandlung in C */
if (write(fd, buf, nbytes) < 0)
        /* Ausfall von write() -- errno enthaelt die Fehlernummer */
else
        /* write() hat geklappt */

Hier liefert write entweder eine positive Anzahl zurück, die für die Anzahl der gelesenen Bytes steht, oder -1, das eine Fehlerindikation darstellt. In der globalen Variablen errno ist dann die zugehörige Fehlernummer zu finden. Obwohl es naturgemäß erscheint, Untersuchungen auf mögliche Ausnahmesituationen direkt hinter einem Prozeduraufruf vorzunehmen, gibt es bei dieser Technik einige Probleme:


next up previous
Next: Mechanismen für Ausnahmenbehandlungen Up: Ausnahmenbehandlungen Previous: Einführung
Andreas Borchert
2/2/1998