¿Cuál de los siguientes es verdadero ?
(A) gets() no realiza ninguna prueba de límite de array y no debe usarse.
(B) fgets() debe usarse en lugar de gets() solo para archivos; de lo contrario, gets() está bien
(C) gets() no puede leer strings con espacios
(D) Ninguna de las anteriores
Respuesta: (A)
Explicación: El uso de gets() genera el riesgo de un desbordamiento del búfer asignado. Esto sucede porque la función gets() no conoce el tamaño del búfer y continúa leyendo hasta que encuentra una nueva línea «\n» o encuentra EOF, por lo que puede desbordar los límites del búfer que se le proporcionó.
¡ Ver gets() es arriesgado de usar!
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA