Scroll to navigation

gets(3) Library Functions Manual gets(3)

NOMBRE

gets - Obtiene una cadena de la entrada estándar (OBSOLETO)

BIBLIOTECA

Biblioteca Estándar C (libc, -lc)

SINOPSIS

#include <stdio.h>
[[obsoleto]] char *gets(char *s);

DESCRIPCIÓN

No use nunca esta función.

gets() reads a line from stdin into the buffer pointed to by s until either a terminating newline or EOF, which it replaces with a null byte ('\0'). No check for buffer overrun is performed (see BUGS below).

VALOR DEVUELTO

gets() returns s on success, and NULL on error or when end of file occurs while no characters have been read. However, given the lack of buffer overrun checking, there can be no guarantees that the function will even return.

ATRIBUTOS

Para obtener una explicación de los términos usados en esta sección, véase attributes(7).

Interfaz Atributo Valor
gets() Seguridad del hilo Multi-hilo seguro

ESTÁNDARES

C99, POSIX.1-2001.

LSB deprecates gets(). POSIX.1-2008 marks gets() obsolescent. ISO C11 removes the specification of gets() from the C language, and since glibc 2.16, glibc header files don't expose the function declaration if the _ISOC11_SOURCE feature test macro is defined.

ERRORES

No use nunca gets(). Puesto que es imposible saber, sin conocer de antemano los datos, cuántos caracteres va a leer gets(), y puesto que gets() continuará guardando caracteres una vez alcanzado el final del búfer, su empleo es extremadamente peligroso. Muchas veces ha sido utilizado para comprometer la seguridad de un sistema. En su lugar emplee fgets() siempre que pueda.

For more information, see CWE-242 (aka "Use of Inherently Dangerous Function") at http://cwe.mitre.org/data/definitions/242.html

VÉASE TAMBIÉN

read(2), write(2), ferror(3), fgetc(3), fgets(3), fgetwc(3), fgetws(3), fopen(3), fread(3), fseek(3), getline(3), getwchar(3), puts(3), scanf(3), ungetwc(3), unlocked_stdio(3), feature_test_macros(7)

TRADUCCIÓN

La traducción al español de esta página del manual fue creada por Gerardo Aburruzaga García <gerardo.aburruzaga@uca.es> y Marcos Fouces <marcos@debian.org>

Esta traducción es documentación libre; lea la GNU General Public License Version 3 o posterior con respecto a las condiciones de copyright. No existe NINGUNA RESPONSABILIDAD.

Si encuentra algún error en la traducción de esta página del manual, envíe un correo electrónico a debian-l10n-spanish@lists.debian.org.

5 Febrero 2023 Páginas de manual de Linux 6.03