Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir akış için geçerli durumlar ve durum geçişleri aşağıdaki şekilde gösterilmiştir.

Dairelerin her biri kararlı bir durumu belirtir. Satırların her biri, akışta çalışan bir işlev çağrısının sonucu olarak gerçekleşebilecek bir geçişi belirtir. Beş işlev grubu durum geçişlerine neden olabilir.
İlk üç gruptaki işlevler stdio.h> dosyasında <bildirilir:
Bayt okuma işlevleri: , , , , ,
getc,getchar,gets,scanfvefscanffreadfgetsfgetcungetcBayt yazma işlevleri: , , , ,
fwrite,printf, ,putc,putcharvfprintfputsvefputsfputcfprintfvprintf
Kalan iki gruptaki işlevler wchar.h> içinde <bildirilir:
Geniş okuma işlevleri: , , , , ,
getwchar,ungetwcvewscanf,getwcfwscanffgetwsfgetwcGeniş yazma işlevleri: , , , , ,
putwchar,vfwprintf,vwprintfvewprintf,putwcfputwsfputwcfwprintf
Durum diyagramı, çoğu yazma ve okuma işlemi arasındaki konum işlevlerinden birini çağırmanız gerektiğini gösterir:
Akış üzerindeki son işlem bir yazma işlemiyse, okuma işlevini çağıramazsınız.
Akış üzerindeki son işlem bir okuma işlemiyse, bu okuma işlemi dosya sonu göstergesini ayarlamadığı sürece yazma işlevini çağıramazsınız.
Son olarak durum diyagramı, konum işleminin hiçbir zaman izleyebileceğiniz geçerli işlev çağrılarının sayısını azaltmadığını gösterir.