Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
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 rutina |
_UNICODE a _MBCS není definován |
_MBCS definovaný |
_UNICODE definovaný |
|---|---|---|---|
_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 );
}
}
Vstup: crt_fgets.txt
Line one.
Line two.
Výstup
Line one.
Viz také
Vstupně-výstupní operace streamu
fputs, fputws
gets, _getws
puts, _putws