fgets, fgetwsfgets, fgetws

Obtiene una cadena de una secuencia.Get a string from a stream.

SintaxisSyntax

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

ParámetrosParameters

strstr
Ubicación de almacenamiento de los datos.Storage location for data.

numCharsnumChars
Número máximo de caracteres que se van a leer.Maximum number of characters to read.

misionesstream
Puntero a la estructura FILE.Pointer to FILE structure.

Valor devueltoReturn Value

Cada una de estas funciones devuelve Str.Each of these functions returns str. Se devuelve null para indicar un error o una condición de final de archivo.NULL is returned to indicate an error or an end-of-file condition. Use feof o ferror para determinar si se ha producido un error.Use feof or ferror to determine whether an error occurred. Si Str o Stream es un puntero nulo, o numChars es menor o igual que cero, esta función invoca el controlador de parámetros no válidos, tal y como se describe en validación de parámetros.If str or stream is a null pointer, or numChars is less than or equal to zero, this function invokes the invalid parameter handler, as described in Parameter Validation. Si la ejecución puede continuar, errno se establece en EINVAL y la función devuelve null.If execution is allowed to continue, errno is set to EINVAL and the function returns NULL.

Consulte _doserrno, errno, _sys_errlist y _sys_nerr para obtener más información sobre estos y otros códigos de error.See _doserrno, errno, _sys_errlist, and _sys_nerr for more information on these, and other, error codes.

ObservacionesRemarks

La función fgets Lee una cadena del argumento de flujo de entrada y la almacena en Str.The fgets function reads a string from the input stream argument and stores it in str. fgets Lee los caracteres de la posición actual de la secuencia hasta el primer carácter de nueva línea, hasta el final de la secuencia, o hasta que el número de caracteres leídos sea igual a numChars -1, lo que suceda primero.fgets reads characters from the current stream position to and including the first newline character, to the end of the stream, or until the number of characters read is equal to numChars - 1, whichever comes first. El resultado almacenado en Str se anexa con un carácter nulo.The result stored in str is appended with a null character. El carácter de nueva línea, cuando se lee, se incluye en la cadena.The newline character, if read, is included in the string.

fgetws es una versión con caracteres anchos de fgets.fgetws is a wide-character version of fgets.

fgetws lee el argumento de caracteres anchos Str como una cadena de caracteres multibyte o una cadena de caracteres anchos en función de si la secuencia se abre en modo de texto o en modo binario, respectivamente.fgetws reads the wide-character argument str as a multibyte-character string or a wide-character string according to whether stream is opened in text mode or binary mode, respectively. Para obtener más información sobre el uso de los modos de texto y binario en E/S de secuencias Unicode y multibyte, consulte E/S de archivo en modo texto y en modo binario y E/S de secuencias Unicode en los modos binario y de texto.For more information about using text and binary modes in Unicode and multibyte stream-I/O, see Text and Binary Mode File I/O and Unicode Stream I/O in Text and Binary Modes.

De forma predeterminada, el ámbito de este estado global de esta función es la aplicación.By default, this function's global state is scoped to the application. Para cambiar esto, vea estado global en CRT.To change this, see Global state in the CRT.

Asignaciones de rutina de texto genéricoGeneric-Text Routine Mappings

Rutina TCHAR.HTCHAR.H routine _UNICODE y _MBCS no definidos_UNICODE & _MBCS not defined _MBCS definido_MBCS defined _UNICODE definido_UNICODE defined
_fgetts_fgetts fgetsfgets fgetsfgets fgetwsfgetws

RequisitosRequirements

FunciónFunction Encabezado necesarioRequired header
fgetsfgets <stdio.h>
fgetwsfgetws <stdio.h> o <wchar.h><stdio.h> or <wchar.h>

Para obtener información adicional sobre compatibilidad, consulte Compatibilidad.For additional compatibility information, see Compatibility.

EjemploExample

// 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 );
   }
}

Entrada: crt_fgets.txtInput: crt_fgets.txt

Line one.
Line two.

SalidaOutput

Line one.

Vea tambiénSee also

E/S de secuenciaStream I/O
fputs, fputwsfputs, fputws
gets, _getwsgets, _getws
puts, _putwsputs, _putws