gets

Dlaczego funkcja gets jest tak niebezpieczna, że nie powinna być używana?

Kiedy próbuję skompilować kod C, który używa funkcji gets() z GCC, I get this Ostrzeżenie: (.tekst+0x34): Ostrzeżeni ... dlaczego jest takie ostrzeżenie o używaniu gets()? Jeśli gets() jest tak niebezpieczny, więc dlaczego nie możemy go usunąć?

Co się dzieje z "gets (stdin)" na stronie coderbyte?

Coderbyte to strona z wyzwaniami dotyczącymi kodowania online (znalazłem ją zaledwie 2 minuty temu). Pierwsze wyzwanie C++ , ... i), więc co tu się dzieje? *właściwie pierwszy jest using namespace std, ale to nie ma znaczenia dla mojego problemu tutaj.

scanf ("%[^ ] s", a) vs gets (a)

Powiedziano mi, że scanf nie powinien być używany, gdy użytkownik wprowadza ciąg znaków. Zamiast tego, przejdź do gets () prz ... et jest wyłącznie dedykowany do obsługi ciągów. Proszę, daj mi o tym znać. Update Ten link pomógł mi lepiej go zrozumieć.