Scroll to navigation

gets(3) Library Functions Manual gets(3)

NUME

gets - obține un șir de caractere de la intrarea standard (DEPRECIATĂ)

BIBLIOTECA

Biblioteca C standard (libc, -lc)

REZUMAT

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

DESCRIERE

Nu folosiți niciodată această funcție.

gets() citește o linie de la intrarea standard stdin în memoria tampon indicată de s până la o nouă linie de terminare sau EOF (sfârșit de fișier), pe care o înlocuiește cu un octet null ('\0'). Nu se efectuează nicio verificare a depășirii memoriei tampon (a se vedea secțiunea ERORI de mai jos).

VALOAREA RETURNATĂ

gets() returnează s în caz de succes și NULL în caz de eroare sau atunci când se produce sfârșitul fișierului în timp ce nu a fost citit niciun caracter. Cu toate acestea, având în vedere lipsa verificării depășirii memoriei tampon, nu se poate garanta că funcția va returna.

ATRIBUTE

Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).

Interfață Atribut Valoare
gets() Siguranța firelor MT-Safe

STANDARDE

C99, POSIX.1-2001.

LSB depreciază gets(). POSIX.1-2008 marchează gets() ca fiind obsoletă. ISO C11 elimină specificația gets() din limbajul C și, începând cu glibc 2.16, fișierele antet glibc nu expun declarația funcției dacă este definită macrocomanda de testare a funcționalității _ISOC11_SOURCE.

ERORI

Nu utilizați niciodată gets(). Deoarece este imposibil de spus fără a cunoaște datele în avans câte caractere va citi gets() și deoarece gets() va continua să stocheze caractere după sfârșitul memoriei tampon, este extrem de periculos de utilizat. Aceasta a fost folosită pentru a încălca securitatea calculatoarelor. Utilizați în schimb fgets().

Pentru mai multe informații, consultați CWE-242 (cunoscut și sub numele de "Use of Inherently Dangerous Function") la http://cwe.mitre.org/data/definitions/242.html.

CONSULTAȚI ȘI

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)

TRADUCERE

Traducerea în limba română a acestui manual a fost creată de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă Nicio RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

5 februarie 2023 Pagini de manual de Linux 6.03