Sdílet prostřednictvím


_fgetchar, _fgetwchar

Přečte znak z stdin.

Syntaxe

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

Vrácená hodnota

_fgetchar vrátí znak přečtený int jako znak nebo vrátí EOF označující chybu nebo konec souboru. _fgetwchar vrátí wint_tjako znak široký znak, který odpovídá znaku pro čtení nebo se vrátíWEOF, aby značil chybu nebo konec souboru. Pro obě funkce použijte feof nebo ferror rozlišovat mezi chybou a podmínkou ukončení souboru.

Poznámky

Tyto funkce čtou jeden znak z stdin. Funkce pak zvýší přidružený ukazatel souboru (pokud je definován) tak, aby odkazovat na další znak. Pokud je datový proud na konci souboru, nastaví se indikátor koncového souboru datového proudu.

_fgetchar je ekvivalent fgetc( stdin ). Je to také ekvivalent getchar, ale implementuje se pouze jako funkce, nikoli jako funkce a makro. _fgetwcharje širokoznační verze ._fgetchar

Tyto funkce nejsou kompatibilní se standardem ANSI.

Ve výchozím nastavení je globální stav této funkce vymezen na aplikaci. Chcete-li toto chování změnit, přečtěte si téma Globální stav v CRT.

Mapování rutin obecného textu

Rutina Tchar.h _UNICODE a _MBCS není definován _MBCS definovaný _UNICODE definovaný
_fgettchar _fgetchar _fgetchar _fgetwchar

Požadavky

Function Požadovaný hlavičkový soubor
_fgetchar <stdio.h>
_fgetwchar <stdio.h> nebo <wchar.h>

Konzola není podporována v aplikacích pro Univerzální platforma Windows (UPW). Standardní stream zpracovává, které jsou přidružené ke konzole –stdinstdout a stderr– musí být přesměrovány, aby je funkce běhu jazyka C mohly používat v aplikacích pro UPW. Další informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

// 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.

Viz také

Vstupně-výstupní operace streamu
fputc, fputwc
getc, getwc