Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Die gültigen Zustände und Statusübergänge für einen Stream sind in der folgenden Abbildung dargestellt.

Jeder der Kreise kennzeichnet einen stabilen Zustand. Jede der Linien kennzeichnet einen Übergang, der als Ergebnis eines Funktionsaufrufs auftritt, der auf dem Stream verwendet wird. Fünf Funktionsgruppen können zu Statusübergängen führen.
Funktionen in den ersten drei Gruppen werden in <stdio.h> deklariert:
Die Bytelesefunktionen:
fgetc, ,fgets,fscanffread,getc,getchar,gets, , undscanfungetcDie Byte-Schreibfunktionen:
fprintf, ,fwritefputsprintffputc,putc,putcharputs, , , undvfprintfvprintf
Funktionen in den verbleibenden beiden Gruppen werden in <wchar.h> deklariert:
Die breiten Lesefunktionen:
fgetwc, ,fgetws,fwscanf,getwc,getwchar, undungetwc,wscanfDie breiten Schreibfunktionen:
fwprintf, ,fputwc,putwcfputws,putwchar,vfwprintf, , undvwprintf,wprintf
Das Zustandsdiagramm zeigt, dass Sie eine der Positionsfunktionen zwischen den meisten Schreib- und Lesevorgängen aufrufen müssen:
Sie können keine Lesefunktion aufrufen, wenn der letzte Vorgang im Datenstrom ein Schreibvorgang war.
Sie können keine Schreibfunktion aufrufen, wenn der letzte Vorgang im Datenstrom ein Lesevorgang war, es sei denn, dieser Lesevorgang legt den End-of-File-Indikator fest.
Schließlich zeigt das Zustandsdiagramm, dass ein Positionsvorgang nie die Anzahl gültiger Funktionsaufrufen verringert, die folgenden kann.