Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

ungetc - Zeichen in den Puffer zurückstellen

&pagelevel(4)&pagelevel

Definition

#include <stdio.h>

int ungetc(int c, FILE *dz);

ungetc schreibt das Zeichen c in den Puffer zurück, der der Datei mit Dateizeiger dz zugeordnet ist. Die nächste Leseoperation, die zeichenweise von dieser Datei einliest (getc), liefert dann nochmals c.
Ist c gleich EOF, macht ungetc nichts und liefert EOF zurück.

Returnwert

Das zurückgestellte Zeichen c



bei Erfolg.

 

EOF

wenn ungetc das Zeichen nicht zurückschreiben kann (Fehler oder c ist EOF).

Hinweise

Es muss immer wenigstens ein Zeichen vor dem ersten ungetc-Aufruf aus der Datei gelesen worden sein.

EOF kann nicht zurückgestellt werden.

Nach einem erfolgreichen ungetc-Aufruf ist der Lese-/Schreibzeiger um ein Zeichen rückwärts verschoben.

Der Aufruf einer der folgenden Funktionen hebt die Effekte des ungetc-Aufrufs (z.B. Rückwärtspositionierung) auf: fseek/fseek64fsetpos/fsetpos64lseek/lseek64rewindfflush.

Wenn an Stelle des zuvor eingelesenen Zeichens ein anderes Zeichen in den Puffer zurückgestellt wurde, ist das Verhalten je nach KR- oder ANSI-Funktionalität unterschiedlich.Bei KR-Funktionalität (nur bei C/C++ Versionen kleiner V3.0 vorhanden) werden beim Schreiben des Pufferinhalts in die externe Datei Originaldaten verändert.
Bei ANSI-Funktionalität werden beim Schreiben des Pufferinhalts in die externe Datei Originaldaten nicht verändert, d.h. es werden stets die Originaldaten vor dem ungetc-Aufruf in die externe Datei geschrieben.

Siehe auch

getc, ungetwc