Share via


_fgetchar, _fgetwchar

Liest ein Zeichen aus stdin.

Syntax

int _fgetchar( void );
wint_t _fgetwchar( void );

Rückgabewert

_fgetchar gibt das als oder zurückgelesene EOF Zeichen int zurück, um einen Fehler oder ein Ende der Datei anzugeben. _fgetwchar gibt als ein wint_tbreites Zeichen zurück, das dem Lesezeichen entspricht, oder gibt WEOF zurück, um einen Fehler oder ein Ende der Datei anzugeben. Verwenden Sie für beide Funktionen feof oder ferror, um zwischen einem Fehler und einer Dateiendebedingung zu unterscheiden.

Hinweise

Diese Funktionen lesen ein einzelnes Zeichen aus stdin. 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.

_fgetchar entspricht fgetc( stdin ). Es ist auch gleichbedeutend mit getchar, aber nur als Funktion und nicht als Funktion und makro implementiert. _fgetwchar ist die Breitzeichenversion von _fgetchar.

Diese Funktionen sind nicht mit dem ANSI-Standard kompatibel.

Standardmäßig gilt der globale Zustand dieser Funktion für die Anwendung. Informationen zum Ändern dieses Verhaltens finden Sie im Global state in the CRT.

Generische Textroutinzuordnungen

Tchar.h-Routine _UNICODE und _MBCS nicht definiert _MBCS Definiert _UNICODE Definiert
_fgettchar _fgetchar _fgetchar _fgetwchar

Anforderungen

Funktion Erforderlicher Header
_fgetchar <stdio.h>
_fgetwchar <stdio.h> oder <wchar.h>

Die Konsole wird in Universelle Windows-Plattform -Apps (UWP) nicht unterstützt. Die Standardstreamhandles, die der Konsole zugeordnet sind ,stdin und stderrmüssen umgeleitet werden, stdoutbevor C-Laufzeitfunktionen sie in UWP-Apps verwenden können. Weitere Informationen zur Kompatibilität finden Sie unter Kompatibilität.

Beispiel

// crt_fgetchar.c
// This program uses _fgetchar 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 )
{
   char buffer[81];
   int  i, ch;

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

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

      Line one.
Line two.Line one.
Line two.

Siehe auch

Stream-E/A
fputc, fputwc
getc, getwc