fgetc, fgetwc

Akıştan bir karakter okuma.

Sözdizimi

int fgetc(
   FILE *stream
);
wint_t fgetwc(
   FILE *stream
);

Parametreler

stream
Yapı işaretçisi FILE .

Dönüş değeri

fgetc , bir hata veya dosya sonunu belirtmek için okunan int karakteri veya döndürür EOF . fgetwc , okunan karaktere karşılık gelen veya bir hata veya dosya sonu belirtmek için döndüren geniş karakter olarak wint_tdöndürür WEOF . Her iki işlev için de veya ferror kullanarak feof bir hata ile dosya sonu koşulu arasında ayrım yapmak için kullanın. Okuma hatası oluşursa, akışın hata göstergesi ayarlanır. ise stream NULLfgetc ve fgetwc Parametre doğrulama bölümünde açıklandığı gibi geçersiz parametre işleyicisini çağırın. Yürütmenin devam etmesi için izin verilirse, bu işlevler olarak EINVAL ayarlanır errno ve döndürürEOF.

Açıklamalar

Bu işlevlerin her biri, ile streamilişkilendirilmiş dosyanın geçerli konumundan tek bir karakter okur. İşlev daha sonra ilişkili dosya işaretçisini (tanımlandıysa) bir sonraki karaktere işaret etmek için artırır. Akış dosyanın sonundaysa, akışın dosya sonu göstergesi ayarlanır.

fgetc ile eşdeğerdir getc, ancak işlev ve makro olarak değil yalnızca işlev olarak uygulanır.

fgetwc, öğesinin fgetcgeniş karakterli sürümüdür; sırasıyla metin modunda veya ikili modda açıldığında c'yi çok baytlı karakter veya geniş karakter stream olarak okur.

Soneki olan _nolock sürümler, diğer iş parçacıkları tarafından müdahaleye karşı korunmamaları dışında aynıdır.

Metin ve ikili modlarda geniş karakterleri ve çok baytlı karakterleri işleme hakkında daha fazla bilgi için bkz . Metin ve ikili modlarda Unicode akışı G/Ç.

Varsayılan olarak, bu işlevin genel durumunun kapsamı uygulama olarak belirlenmiştir. Bu davranışı değiştirmek için bkz. CRT'de Genel durum.

Genel metin yordamı eşlemeleri

TCHAR.H yordamı _UNICODE ve _MBCS tanımlanmadı _MBCS tanımlanan _UNICODE tanımlanan
_fgettc fgetc fgetc fgetwc

Gereksinimler

İşlev Gerekli başlık
fgetc <stdio.h>
fgetwc <stdio.h> veya <wchar.h>

Daha fazla uyumluluk bilgisi için bkz . Uyumluluk.

Örnek

// crt_fgetc.c
// This program uses getc to read the first
// 80 input characters (or until the end of input)
// and place them into a string named buffer.

#include <stdio.h>
#include <stdlib.h>

int main( void )
{
   FILE *stream;
   char buffer[81];
   int  i, ch;

   // Open file to read line from:
   fopen_s( &stream, "crt_fgetc.txt", "r" );
   if( stream == NULL )
      exit( 0 );

   // Read in first 80 characters and place them in "buffer":
   ch = fgetc( stream );
   for( i=0; (i < 80 ) && ( feof( stream ) == 0 ); i++ )
   {
      buffer[i] = (char)ch;
      ch = fgetc( stream );
   }

   // Add null to end string
   buffer[i] = '\0';
   printf( "%s\n", buffer );
   fclose( stream );
}

Giriş: crt_fgetc.txt

Line one.
Line two.

Çıktı

Line one.
Line two.

Ayrıca bkz.

Akış G/Ç
fputc, fputwc
getc, getwc