fgetc, fgetwc
Lesen eines Zeichens aus einem Stream.
int fgetc(
FILE *stream
);
wint_t fgetwc(
FILE *stream
);
Parameter
- stream
Zeiger auf 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 vorhanden sind, als wint_tmit Breitzeichen zurück, das dem Zeichen gelesen oder WEOF zurückgegeben, um einen Fehler anzugeben oder Dateiende ist.Damit beide Funktionen verwenden, feof oder ferror zwischen einem Fehler und einer Dateiende-Bedingung unterschieden wird.Wenn ein Lesefehler auftritt, wird der Fehler wird für den Stream festgelegt.Wenn streamNULList, rufen fgetc und fgetwc ungültige Parameter für ein, wie in Parametervalidierungbeschrieben.Wenn die Ausführung fortgesetzt werden kann, darf dieses Features zu errno festlegen EINVAL und geben EOF.
Hinweise
Jede dieser Funktion liest ein einzelnes Zeichen von der aktuellen Position der Datei, die streamzugeordnet ist.Die Funktion wird dann den Zeiger der zugeordneten Datei (falls definiert), um zum nächsten Zeichen zu veranschaulichen.Wenn der Stream Dateiende ist, wird der Dateiende-Indikator für den Stream festgelegt.
fgetc ist mit getcäquivalent, aber nur als Funktion anstelle der als Funktion und Makro implementiert.
fgetwc ist die Breitzeichen-Version von fgetc. c liest sie als Mehrbytezeichen oder Breitzeichen, je nachdem ob stream im Textmodus oder im binären Modus geöffnet ist.
Die Versionen mit dem _nolock Suffix sind identisch, mit der Ausnahme, dass sie werden nicht von der Fehler durch andere Threads geschützt.
Weitere Informationen zum Verarbeiten von Breitzeichen und Mehrbytezeichen in Text- und binäre Daten ändert, finden Sie unter Unicode-Datenstrom E/A in den Text-und Binärdatei-Modi.
Zuweisung generischer Textroutinen
TCHAR.H-Routine |
_UNICODE & _MBCS nicht definiert |
_MBCS definieren |
_UNICODE definiert |
---|---|---|---|
_fgettc |
fgetc |
fgetc |
fgetwc |
Anforderungen
Funktion |
Erforderlicher Header |
---|---|
fgetc |
<stdio.h> |
fgetwc |
<stdio.h> oder <wchar.h> |
Um Kompatibilität zusätzlichen Informationen 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.
Output
Line one.
Line two.