gets(3) Library Functions Manual gets(3) NOM gets - Recuperer une chaine sur l'entree standard (OBSOLETE) BIBLIOTHEQUE Bibliotheque C standard (libc, -lc) SYNOPSIS #include [[obsolete]] char *gets(char *s); DESCRIPTION Ne jamais utiliser cette fonction. gets() lit une ligne depuis stdin et la place dans le tampon pointe par s jusqu'a atteindre un retour chariot, ou EOF, qu'il remplace par un octet NULL (<< \0 >>). Il n'y a pas de verification de debordement de tampon (voir la section des BOGUES plus bas). VALEUR RENVOYEE gets() renvoie le pointeur s en cas de succes et NULL en cas d'erreur, ou si la fin de fichier est atteinte avant d'avoir pu lire au moins un caractere. Cependant, le debordement de tampon n'etant pas surveille, il ne peut pas y avoir de certitude que la fonction renvoie quelque chose. ATTRIBUTS Pour une explication des termes utilises dans cette section, consulter attributes(7). +---------------------------------+--------------------------+---------+ |Interface | Attribut | Valeur | +---------------------------------+--------------------------+---------+ |gets() | Securite des threads | MT-Safe | +---------------------------------+--------------------------+---------+ STANDARDS POSIX.1-2008. HISTORIQUE C89, POSIX.1-2001. LSB deconseille l'utilisation de gets(). POSIX.1-2008 marque gets() comme etant obsolete. ISO C11 retire la specification de gets() du langage C et, depuis la glibc 2.16, les fichiers d'en-tete glibc n'exposent pas la declaration de fonction si la macro de test de fonctionnalites _ISOC11_SOURCE est definie. BOGUES N'utilisez jamais gets(). Comme il est impossible de savoir a l'avance combien de caracteres seront lus par gets(), et comme celui-ci ecrira tous les caracteres lus, meme s'ils debordent du tampon, cette fonction est extremement dangereuse a utiliser. On a deja utilise ce dysfonctionnement pour creer des trous de securite. UTILISEZ TOUJOURS fgets() A LA PLACE DE gets(). Pour plus d'informations, consultez CWE-242 (document intitule sous le nom << Use of Inherently Dangerous Function >>) a l'adresse http://cwe.mitre.org/data/definitions/242.html VOIR AUSSI 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) TRADUCTION La traduction francaise de cette page de manuel a ete creee par Christophe Blaess , Stephan Rafin , Thierry Vignaud , Francois Micaux, Alain Portal , Jean-Philippe Guerard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas Francois , Florentin Duneau , Simon Paillard , Denis Barbier , David Prevot et Frederic Hantrais Cette traduction est une documentation libre ; veuillez vous reporter a la GNU General Public License version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITE LEGALE. Si vous decouvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message a . Pages du manuel de Linux 6.06 31 octobre 2023 gets(3)