Dr. Andreas Borchert Abteilung Angewandte
Informationsverarbeitung 29. April 2003
Christian Ehrhardt Blatt 1
Systemnahe Software (SS 2003)
Abgabetermin 6.5.2003
Unter http://www.mathematik.uni-ulm.de/sai/ss03/soft/blatt1/tasks/
gibt es einige kurze Beispielprogramme zum Download. Jedes dieser
Programme enthält einen Fehler, der dazu führen kann, daß das
Verhalten des Programms undefiniert ist, z.B. weil über die
vorgesehenen Speicherbereiche hinausgeschrieben wird.
Aufgabe dieses Blattes ist für jedes dieser Programme folgendes:
- Findet den Fehler und erklärt, warum es sich um einen Fehler
handelt.
- Gebt eine Eingabe an, für die das Programmverhalten undefiniert ist.
- Korrigiert das Programm mit möglichst wenig Änderungen so,
daß es keinen Fehler mehr enthält. Dabei sollte sich das Verhalten
des Programms für unkritische Eingaben (solche, die kein undefiniertes
Verhalten provozieren) möglichst nicht verändern.
Christian Ehrhardt
2003-04-29