Nota
L-aċċess għal din il-paġna jeħtieġ l-awtorizzazzjoni. Tista’ tipprova tidħol jew tibdel id-direttorji.
L-aċċess għal din il-paġna jeħtieġ l-awtorizzazzjoni. Tista’ tipprova tibdel id-direttorji.
The valid states, and state transitions, for a stream are shown in the following figure.

Each of the circles denotes a stable state. Each of the lines denotes a transition that can occur as the result of a function call that operates on the stream. Five groups of functions can cause state transitions.
Functions in the first three groups are declared in <stdio.h>:
The byte read functions:
fgetc,fgets,fread,fscanf,getc,getchar,gets,scanf, andungetcThe byte write functions:
fprintf,fputc,fputs,fwrite,printf,putc,putchar,puts,vfprintf, andvprintf
Functions in the remaining two groups are declared in <wchar.h>:
The wide read functions:
fgetwc,fgetws,fwscanf,getwc,getwchar,ungetwc, andwscanf,The wide write functions:
fwprintf,fputwc,fputws,putwc,putwchar,vfwprintf,vwprintf, andwprintf,
The state diagram shows that you must call one of the position functions between most write and read operations:
You can't call a read function if the last operation on the stream was a write.
You can't call a write function if the last operation on the stream was a read, unless that read operation set the end-of-file indicator.
Finally, the state diagram shows that a position operation never decreases the number of valid function calls that can follow.