Universität Ulm - Abteilung Angewandte Informationsverarbeitung

 


13. Übungsblatt zur Vorlesung Allgemeine Informatik III


Abgabetermin: Dienstag, 10.02.2004


Temporäre Dateien    (10 Punkte)



Implementieren Sie ein Programm, mit dem Datensätze fester Länge (Rekords) einer Datei hinzugefügt, gesucht bzw. gelesen, verändert und gelöscht werden können. Jeder Datensatz soll dabei folgende Informationen eines Studenten enthalten: Matrikelnummer, Name und Studienfach.


Beachten Sie beim Implementieren folgende Punkte:

Anmerkungen: Beachten Sie zu temporären Dateien die Hinweise in den Übungen und den Teil im Skript (unter unlink()). Temporäre Dateien gehören in das Verzeichnis /tmp. Einen eindeutigen Namen für eine temporäre Datei kann man mittels der Prozess-ID (getpid()) und sprintf() bzw. via mktemp() (siehe Beispiel im Skript) erzeugen. Die Funktion mkstemp() darf nicht verwendet werden!

Beispiel:

thales$a.out

(a)dd, (f)ind, (c)hange, (d)elete, (p)rint, (q)uit? a

Matrikelnummer? 12345
Name? Markus
Fach? Löffler

(a)dd, (f)ind, (c)hange, (d)elete, (p)rint, (q)uit? a

Matrikelnummer? 5643
Name? Katrin
Fach? Mühlhaus

(a)dd, (f)ind, (c)hange, (d)elete, (p)rint, (q)uit? p
5643, Katrin, Mühlhaus
12345, Markus, Löffler
(a)dd, (f)ind, (c)hange, (d)elete, (p)rint, (q)uit? d

Name? Markus

(a)dd, (f)ind, (c)hange, (d)elete, (p)rint, (q)uit? p
5643, Katrin, Mühlhaus
(a)dd, (f)ind, (c)hange, (d)elete, (p)rint, (q)uit? f

Name? Markus

RECORD NOT FOUND!
(a)dd, (f)ind, (c)hange, (d)elete, (p)rint, (q)uit? q

thales$



Viel Erfolg!



Hans Braxmeier