Freigeben über


fgetc, fgetwc

Lesen Sie ein Zeichen von einem Stream.

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

Parameter

  • stream
    Zeiger zur FILE-Struktur.

Rückgabewert

fgetc gibt das Zeichen zurück, das als int gelesen wird oder gibt EOF, um einen Fehler anzugeben oder Dateiende zurück. fgetwc gibt, als wint_t, dem Breitzeichen zurück, das auf Zeichen gelesen oder WEOF zurückgibt, um einen Fehler anzugeben oder Dateiende entspricht. Verwenden Sie für beide Funktionen feof oder ferror, um zwischen einem Fehler und einer Dateiendebedingung zu unterscheiden. Wenn ein Lesefehler auftritt, wird der Fehler für den Stream festgelegt. Wenn streamNULL ist, rufen fgetc und fgetwc den ungültigen Parameterhandler auf, wie in Parametervalidierung beschrieben. Wenn die weitere Ausführung zugelassen wird, stellen diese Funktionen errno auf EINVAL ein und geben EOF zurück.

Hinweise

Jede dieser Funktionen liest ein einzelnes Zeichen von der aktuellen Position der Datei, die stream zugeordnet ist. Die Funktion erhöht dann den zugeordneten Dateizeiger (sofern definiert), um auf das nächste Zeichen zu zeigen. Wenn der Stream am Dateiende ist, wird der Dateiende-Indikator für den Stream festgelegt.

fgetc entspricht getc, jedoch wird nur als Funktion, sondern als Funktion und Makro implementiert.

fgetwc ist die Breitzeichen-Version von fgetc; c liest sie als Mehrbytezeichen oder Breitzeichen, ob stream im Textmodus oder im Binärdateimodus geöffnet ist.

Die Versionen mit dem _nolock-Suffix sind identisch, allerdings sind sie nicht vor Störungen durch andere Threads geschützt.

Weitere Informationen über die Verarbeitung von Breitzeichen und von Mehrbytezeichen in den Text- und Binärdateimodi, finden Sie unter Unicode-Stream E/A in den Text Binärdatei-Modi.

Zuordnung generischer Textroutinen

TCHAR.H-Routine

_UNICODE & _MBCS nicht definiert

_MBCS definiert

_UNICODE definiert

_fgettc

fgetc

fgetc

fgetwc

Anforderungen

Funktion

Erforderlicher Header

fgetc

<stdio.h>

fgetwc

<stdio.h> oder <wchar.h>

Zusätzliche Informationen zur Kompatibilität finden Sie unter Kompatibilität in der Einführung.

Beispiel

// 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 );
}

Eingabe: crt_fgetc.txt

Line one.
Line two.

Ausgabe

Line one.
Line two.

.NET Framework-Entsprechung

Siehe auch

Referenz

Stream-E/A

fputc, fputwc

getc, getwc