¿Por qué es la función gets tan peligrosa que no debe ser utilizada?


Cuando intento compilar código C que usa la función gets() con GCC,

Entiendo esto

aviso:

(.text + 0x34): advertencia: la función 'gets' es peligrosa y no debe usarse.

Recuerdo que esto tiene algo que ver con la protección y seguridad de la pila, pero no estoy seguro exactamente por qué?

¿Puede alguien ayudarme a eliminar esta advertencia y explicar por qué existe tal advertencia sobre el uso de gets()?

Si gets() es tan peligroso entonces ¿por qué no podemos eliminarlo?


Warning: Undefined property: agent_blog_content::$date_asked in /var/www/agent_etc/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 32

Warning: Undefined property: agent_blog_content::$count_answers in /var/www/agent_etc/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 52