Sdílet prostřednictvím


fgets, fgetws

Získání řetězce z datového proudu

Syntaxe

char *fgets(
   char *str,
   int numChars,
   FILE *stream
);
wchar_t *fgetws(
   wchar_t *str,
   int numChars,
   FILE *stream
);

Parametry

str
Umístění úložiště pro data

numChars
Maximální počet znaků, které se mají přečíst.

stream
Ukazatel na FILE strukturu.

Vrácená hodnota

Každá z těchto funkcí vrátí str. NULL vrátí se k označení chyby nebo podmínky ukončení souboru. Použijte feof nebo ferror určete, jestli došlo k chybě. Pokud str je nebo stream je ukazatel null nebo numChars je menší nebo roven nule, tato funkce vyvolá neplatnou obslužnou rutinu parametru, jak je popsáno v ověření parametru. Pokud je povoleno pokračovat provádění, errno je nastavena na EINVAL a funkce vrátí NULL.

Další informace o návratových kódech naleznete v tématu errno, _doserrno, _sys_errlista _sys_nerr.

Poznámky

Funkce fgets načte řetězec ze vstupního stream argumentu a uloží ho do str. fgets čte znaky z aktuální pozice datového proudu do a včetně prvního znaku nového řádku, na konec datového proudu nebo do doby, než se počet přečtených znaků rovná numChars - 1 podle toho, co nastane dříve. Výsledek uložený v str souboru je připojen znakem null. Znak nového řádku, pokud je přečten, je součástí řetězce.

fgetwsje širokoznační verze .fgets

fgetws přečte argument širokého znaku str jako řetězec s vícebajtovými znaky nebo jako řetězec širokého znaku při stream otevření v textovém režimu nebo v binárním režimu. Další informace o použití textových a binárních režimů v kódování Unicode a multibajtové stream-I/O naleznete v tématu Vstupně-výstupní operace textového a binárního režimu vstupně-výstupních operací a vstupně-výstupních operací datového proudu Unicode v textových a binárních režimech.

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

TCHAR.H Rutinní _UNICODE a _MBCS není definován _MBCS Definovány _UNICODE Definovány
_fgetts fgets fgets fgetws

Požadavky

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

Další informace o kompatibilitě najdete v tématu Kompatibilita.

Příklad

// crt_fgets.c
// This program uses fgets to display
// the first line from a file.

#include <stdio.h>

int main( void )
{
   FILE *stream;
   char line[100];

   if( fopen_s( &stream, "crt_fgets.txt", "r" ) == 0 )
   {
      if( fgets( line, 100, stream ) == NULL)
         printf( "fgets error\numChars" );
      else
         printf( "%s", line);
      fclose( stream );
   }
}

Vstupní: crt_fgets.txt

Line one.
Line two.

Výstup

Line one.

Viz také

Vstupně-výstupní operace streamu
fputs, fputws
gets, _getws
puts, _putws