fgets, fgetws
Obter uma cadeia de caracteres de um fluxo.
char *fgets(
char *str,
int n,
FILE *stream
);
wchar_t *fgetws(
wchar_t *str,
int n,
FILE *stream
);
Parâmetros
str
Local para armazenamento de dados.n
Número máximo de caracteres a serem lidos.stream
Ponteiro a estrutura de FILE .
Valor de retorno
Cada uma dessas funções retorna str. NULL é retornado para indicar um erro ou uma condição de participante de Arquivo. Use feof ou ferror para determinar se um erro ocorreu. Se str ou stream for um ponteiro nulo, ou n é menor ou igual a zero, essa função invoca o manipulador inválido do parâmetro, conforme descrito em Validação do parâmetro. Se a execução puder continuar, errno será definido como EINVAL e a função retornará NULL.
Para obter mais informações sobre esses e outros códigos de erro, consulte _doserrno, errno, _sys_errlist, and _sys_nerr.
Comentários
A função de fgets leu uma cadeia de caracteres do argumento de stream de entrada e armazená-las em str. os caracteres de leituras defgets da posição atual do fluxo e de incluir o primeiro caractere de nova linha, ao final do fluxo, ou até que o número de caracteres são iguais a n – 1, o que vem primeiro. O resultado armazenado em str é acrescentado com um caractere nulo. O caractere de nova linha, se ler, é incluído na cadeia de caracteres.
fgetws é uma versão de caracteres largos de fgets.
fgetws ler o argumento str ampla de caracteres como uma cadeia de caracteres de multibyte- caractere ou uma cadeia de caracteres de ampla caractere de acordo com o que stream está aberto no modo de texto ou no modo de binário, respectivamente. Para obter mais informações sobre como usar os modos de texto e binários em Unicode e em vários stream-I/O, consulte O modo de texto e binários de E/S e Fluxo de E/S Unicode nos modos de texto e binários.
Mapeamentos da rotina de texto genérico
Rotina TCHAR.H |
_UNICODE & _MBCS não definido |
_MBCS definido |
_UNICODE definido |
---|---|---|---|
_fgetts |
fgets |
fgets |
fgetws |
Requisitos
Função |
Cabeçalho necessário |
---|---|
fgets |
<stdio.h> |
fgetws |
<stdio.h> ou <wchar.h> |
Para informações adicionais de compatibilidade, consulte Compatibilidade na Introdução.
Exemplo
// crt_fgets.c
// This program uses fgets to display
// a line from a file on the screen.
//
#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\n" );
else
printf( "%s", line);
fclose( stream );
}
}
Entrada: crt_fgets.txt
Line one.
Line two.
Saída
Line one.