Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Prawidłowe stany i przejścia stanu dla strumienia są wyświetlane na poniższym rysunku.

Każdy z okręgów określa stabilny stan. Każdy z wierszy oznacza przejście, które może wystąpić w wyniku wywołania funkcji działającego na strumieniu. Pięć grup funkcji może powodować przejścia stanu.
Funkcje w pierwszych trzech grupach są deklarowane w <stdio.h>:
Funkcje odczytu bajtów:
fgetc,getcfgetsfscanfgetcharfread,gets, iscanfungetcFunkcje zapisu bajtów:
fprintf,printffputsfputcputcputcharfwriteputs, ,vfprintf, ivprintf
Funkcje w pozostałych dwóch grupach są deklarowane w <wchar.h>:
Szerokie funkcje odczytu:
fgetwc, ,fgetwsfwscanf,getwc,getwchar,ungetwc, iwscanf,Szerokie funkcje zapisu:
fwprintf,fputwcvwprintffputwsputwcputwcharvfwprintfiwprintf
Diagram stanu pokazuje, że należy wywołać jedną z funkcji położenia między większością operacji zapisu i odczytu:
Nie można wywołać funkcji odczytu, jeśli ostatnia operacja w strumieniu była zapisem.
Nie można wywołać funkcji zapisu, jeśli ostatnia operacja w strumieniu była odczytem, chyba że operacja odczytu ustawi wskaźnik końca pliku.
Na koniec diagram stanu pokazuje, że operacja położenia nigdy nie zmniejsza liczby prawidłowych wywołań funkcji, które mogą być wykonywane.