005
28.11.2007, 09:16 Uhr
ao
(Operator)
|
Lies mal hier nach - auch die Feinheiten sind ganz interessant: http://opengroup.org/onlinepubs/007908799/xsh/ungetc.html
Brauchen könnte man ungetc zum Beispiel, wenn man einen Interpreter schreibt, der aus einem Datenstrom gefüttert wird. Der Interpreter könnte mehrere Zustände haben, z.B. einen Datenmodus, in dem Daten kommen, z.B. Bilder, die der Interpreter anzeigt, und einen Befehlsmodus, in dem der Datenstrom Einstellungen des Interpreters steuert.
Was macht man nun, wenn man unerwartete Zeichen bekommt, mit denen man im aktuellen Zustand nichts anfangen kann? In den anderen Zustand wechseln und es noch mal versuchen. Da die Zeichen wichtig sein können, sollen sie nicht verloren gehen. Dann ist es ganz nett, wenn man das schon erhaltene Zeichen einfach wieder zurückgeben kann.
Die Alternative wäre, dass man sich um die schon abgeholten Zeichen selber kümmern muss. Das macht aber das Programm umständlich. Einfacher ist, wenn der Datenstrom diesen Dienst zur Verfügung stellen kann.
Gruß ao |