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.
Bu işlevler, tek karakterden büyük veri yapılarına kadar farklı boyutlarda ve biçimlerde verileri işler. Ayrıca performansı geliştirebilecek arabelleğe alma da sağlar. Bir akış arabelleğinin varsayılan boyutu 4K'dır. Bu yordamlar yalnızca çalışma zamanı kitaplığı yordamları tarafından oluşturulan arabellekleri etkiler ve işletim sistemi tarafından oluşturulan arabellekleri etkilemez.
Akış G/Ç yordamları
| Yordam | Kullanma |
|---|---|
clearerr, clearerr_s |
Akış için hata göstergesini temizle |
fclose |
Akışı kapat |
_fcloseall |
, stdinve dışındaki stdouttüm açık akışları kapatınstderr |
_fdopen, wfdopen |
Akışı açık dosyanın dosya tanımlayıcısıyla ilişkilendirme |
feof |
Akışta dosya sonunu test edin |
ferror |
Akışta hata için test |
fflush |
Akışı arabelleğe veya depolama cihazına boşaltma |
fgetc, fgetwc |
Akıştan karakter okuma (ve getc'nin getwc işlev sürümleri) |
_fgetchar, _fgetwchar |
'den stdin karakter okuma (ve'nin getchargetwchar işlev sürümleri) |
fgetpos |
Akışın konum göstergesini alma |
fgets, fgetws |
Akıştan dize okuma |
_fileno |
Akışla ilişkilendirilmiş dosya tanımlayıcısı alma |
_flushall |
Tüm akışları arabelleğe veya depolama cihazına boşalt |
fopen, _wfopen, fopen_s, _wfopen_s |
Akışı açma |
fprintf
_fprintf_l , fwprintf |
Akışa biçimlendirilmiş veri yazma |
fputc, fputwc |
Akışa karakter yazma (ve putcişlev sürümleriputwc) |
_fputchar, _fputwchar |
'a stdout karakter yazma (ve'nin putcharputwchar işlev sürümleri) |
fputs, fputws |
Akışa dize yazma |
fread |
Akıştan biçimlendirilmemiş verileri okuma |
freopen, _wfreopen, freopen_s, _wfreopen_s |
Akış işaretçisini yeni dosyaya veya cihaza yeniden atama FILE |
fscanf, fwscanf, fscanf_s, , _fscanf_s_l, fwscanf_s, _fwscanf_s_l |
Biçimlendirilmiş verileri akıştan okuma |
fseek, _fseeki64 |
Dosya konumunu verilen konuma taşıma |
fsetpos |
Akışın konum göstergesini ayarlama |
_fsopen, _wfsopen |
Dosya paylaşımıyla akışı açma |
ftell, _ftelli64 |
Geçerli dosya konumunu alma |
fwrite |
Akışa biçimlendirilmemiş veri öğeleri yazma |
getc, getwc |
Akıştan karakter okuma (ve fgetc'nin fgetwc makro sürümleri) |
getchar, getwchar |
'den stdin karakter okuma (ve fgetchar'nin fgetwchar makro sürümleri) |
_getmaxstdio |
Akış G/Ç düzeyinde izin verilen eşzamanlı olarak açık dosyaların sayısını döndürür. |
gets_s, _getws_s |
Satırı şu kaynaktan okuma: stdin |
_getw |
Akıştan ikili int okuma |
printf
_printf_l , wprintf |
Biçimlendirilmiş verileri stdout |
putc, putwc |
Akışa karakter yazma (ve'nin fputcfputwcmakro sürümleri) |
putchar, putwchar |
'a stdout karakter yazma (ve'nin fputcharfputwchar makro sürümleri) |
puts, _putws |
Akışa satır yazma |
_putw |
Akışa ikili int yazma |
rewind |
Dosya konumunu akışın başına taşıma |
_rmtmp |
Tarafından oluşturulan geçici dosyaları kaldırma tmpfile |
scanf
_scanf_l , wscanf |
Biçimlendirilmiş verileri okuma stdin |
setbuf |
Akış arabelleğe almayı denetleme |
_setmaxstdio |
Akış G/Ç düzeyinde aynı anda açılan dosya sayısı için maksimum değeri ayarlayın. |
setvbuf |
Akış arabelleği ve arabellek boyutunu denetleme |
_snprintf, _snwprintf, _snprintf_s, , _snprintf_s_l, _snwprintf_s, _snwprintf_s_l |
Belirtilen uzunluktaki biçimlendirilmiş verileri dizeye yazma |
_snscanf, _snwscanf, _snscanf_s, , _snscanf_s_l, _snwscanf_s, _snwscanf_s_l |
Standart giriş akışından belirtilen uzunluktaki biçimlendirilmiş verileri okuyun. |
sprintf, swprintf, sprintf_s, , _sprintf_s_l, swprintf_s, _swprintf_s_l |
Biçimlendirilmiş verileri dizeye yazma |
sscanf, swscanf, sscanf_s, _sscanf_s_l, swscanf_s, _swscanf_s_l |
Dizeden biçimlendirilmiş verileri okuma |
_tempnam, _wtempnam |
Verilen dizinde geçici dosya adı oluşturma |
tmpfile, tmpfile_s |
Geçici dosya oluşturma |
tmpnam, _wtmpnam, tmpnam_s, _wtmpnam_s |
Geçici dosya adı oluşturma |
ungetc, ungetwc |
Karakteri akışa geri gönderme |
_vcprintf, _vcwprintf, _vcprintf_s, , _vcprintf_s_l, _vcwprintf_s, _vcwprintf_s_l |
Biçimlendirilmiş verileri konsola yazın. |
vfprintf, vfwprintf, vfprintf_s, , _vfprintf_s_l, vfwprintf_s, _vfwprintf_s_l |
Akışa biçimlendirilmiş veri yazma |
vprintf, vwprintf, vprintf_s, , _vprintf_s_l, vwprintf_s, _vwprintf_s_l |
Biçimlendirilmiş verileri stdout |
_vsnprintf, _vsnwprintf, vsnprintf_s, , _vsnprintf_s, _vsnprintf_s_l, _vsnwprintf_s, _vsnwprintf_s_l |
Belirtilen uzunluktaki biçimlendirilmiş verileri arabelleğe yazma |
vsprintf, vswprintf, vsprintf_s, , _vsprintf_s_l, vswprintf_s, _vswprintf_s_l |
Biçimlendirilmiş verileri arabelleğe yazma |
Bir program yürütmeye başladığında, başlangıç kodu otomatik olarak birkaç akış açar: standart giriş (tarafından stdinişaret edilen), standart çıkış (işaret eden stdout) ve standart hata (tarafından stderrişaret edilir). Bu akışlar varsayılan olarak konsola (klavye ve ekran) yönlendirilir. , veya freopenöğesini bir disk dosyasına veya stdin cihaza yeniden yönlendirmek stdoutiçin kullanınstderr.
Akış yordamları kullanılarak açılan dosyalar varsayılan olarak arabelleğe alınıyor.
stdout ve stderr işlevleri her dolu olduğunda veya bir karakter cihazına yazıyorsanız, her kitaplık çağrısından sonra temizlenir. Program anormal şekilde sonlandırılırsa çıkış arabellekleri boşaltılmayabilir ve bu da veri kaybına neden olabilir. Belirtilen bir dosyayla ilişkili arabelleğin işletim sistemine boşaltıldığından veya tüm açık arabelleklerin boşaltıldığından emin olmak için veya fflush kullanın_flushall. İşletim sistemi verileri diske yazmadan önce önbelleğe alabilir. Diske işleme özelliği, sistem hatası olduğunda boşaltılan arabellek içeriğinin kaybolmamasını sağlar.
Arabellek içeriğini diske işlemenin iki yolu vardır:
- COMMODE dosyasıyla bağlantı. Genel işleme bayrağı ayarlamak için OBJ. Genel bayrağın varsayılan ayarı, "işleme yok" için şeklindedir
n. - mod bayrağını veya
cilefopenolarak_fdopenayarlayın.
Veya c bayrağıyla n özel olarak açılan tüm dosyalar, genel işleme/işleme yok bayrağının durumundan bağımsız olarak bayrağına göre davranır.
Programınız bir akışı açıkça kapatmazsa, program sonlandırıldığında akış otomatik olarak kapatılır. Ancak, bir kerede açık olabilecek akış sayısı sınırlı olduğundan, programınız bu akışı tamamladığında bir akışı kapatmalısınız. Bu sınır hakkında bilgi için bkz _setmaxstdio .
Giriş, çıkışı yalnızca dosya konumlandırma işlevine fflush (fseek, fsetposveya rewind) veya öğesine gelen bir araya gelen çağrıyla doğrudan izleyebilir. Giriş işlemi dosyanın sonuyla karşılaşırsa, girişin ardından dosya konumlandırma işlevine bir araya gelen çağrı olmadan çıkış gelebilir.
Ayrıca bkz.
Giriş ve çıkış
Kategoriye göre Evrensel C çalışma zamanı yordamları