Freigeben über


_fgetchar, _fgetwchar

Liest ein Zeichen aus stdin.

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

Rückgabewert

_fgetchar gibt das gelesene Zeichen als int zurück oder gibt EOF zurück, um einen Fehler oder ein Dateiende anzugeben. **_**fgetwchar gibt als das dem gelesenen Zeichen entsprechende Breitzeichen wint_t zurück oder gibt WEOF zurück, um einen Fehler oder ein Dateiende 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 ). Entspricht ebenfalls getchar, wird jedoch anstelle einer Funktion und eines Makros nur als Funktion implementiert. _fgetwchar ist die Breitzeichenversion von _fgetchar.

Diese Funktionen sind nicht dem ANSI-Standard kompatibel.

Zuordnung generischer Textroutinen

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 Windows Store-Apps nicht unterstützt. Die mit der Konsole verknüpften Standardstreamhandles, stdin, stdout und stderr, müssen umgeleitet werden, bevor sie von C-Laufzeitfunktionen in Windows Store-Apps verwendet werden 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 );
}
  

.NET Framework-Entsprechung

Siehe auch

Referenz

Stream-E/A

fputc, fputwc

getc, getwc