Provided by: manpages-ro-dev_4.27.0-1_all bug

NUME

       scanf, fscanf, vscanf, vfscanf - conversia formatului FILE (fișierului) de intrare

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <stdio.h>

       int scanf(const char *restrict format, ...);
       int fscanf(FILE *restrict stream,
                  const char *restrict format, ...);

       #include <stdarg.h>

       int vscanf(const char *restrict format, va_list ap);
       int vfscanf(FILE *restrict stream,
                  const char *restrict format, va_list ap);

   Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați feature_test_macros(7)):

       vscanf(), vfscanf():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

DESCRIERE

       Familia  de  funcții scanf() scanează datele de intrare formatate ca sscanf(3), dar citite dintr-un FILE.
       Este foarte dificil de utilizat corect aceste funcții și este preferabil să se citească linii întregi  cu
       fgets(3)  sau getline(3) și să se analizeze ulterior cu sscanf(3) sau cu funcții mai specializate, cum ar
       fi strtol(3).

       Funcția scanf() citește datele de intrare din fluxul de intrare  standard  stdin,  iar  fscanf()  citește
       datele de intrare din indicatorul de flux stream.

       Funcția  vfscanf()  este  analogă  cu  vfprintf(3) și citește datele de intrare de la indicatorul de flux
       stream utilizând o listă de indicatori cu argument variabil (a se vedea stdarg(3). Funcția vscanf()  este
       analogă cu vprintf(3) și citește de la intrarea standard.

VALOAREA RETURNATĂ

       În  caz de reușită, aceste funcții returnează numărul de elemente de intrare care s-au potrivit cu succes
       și au fost atribuite; acesta poate fi mai mic decât cel prevăzut sau chiar zero, în cazul  unui  eșec  de
       potrivire inițială.

       Valoarea  EOF  este returnată dacă se ajunge la sfârșitul intrării înainte de prima conversie reușită sau
       de un eșec de potrivire.  EOF este, de asemenea, returnată în cazul în care apare o eroare de citire, caz
       în care se activează indicatorul de eroare pentru flux (a se vedea ferror(3)), iar errno este configurată
       pentru a indica eroarea.

ERORI-IEȘIRE

       EAGAIN Descriptorul de fișier subiacent lui stream este marcat ca fiind  neblocant,  iar  operațiunea  de
              citire s-ar bloca.

       EBADF  Descriptorul de fișier subiacentlui stream nu este valid sau nu este deschis pentru citire.

       EILSEQ Secvența de octeți introdusă nu formează un caracter valid.

       EINTR  Operația de citire a fost întreruptă de un semnal; a se vedea signal(7).

       EINVAL Nu sunt suficiente argumente; sau format este NULL.

       ENOMEM Memorie insuficientă.

ATRIBUTE

       Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
       ┌──────────────────────────────────────────────────────────────────┬───────────────────┬────────────────┐
       │ InterfațăAtributValoare        │
       ├──────────────────────────────────────────────────────────────────┼───────────────────┼────────────────┤
       │ scanf(), fscanf(), vscanf(), vfscanf()                           │ Siguranța firelor │ MT-Safe locale │
       └──────────────────────────────────────────────────────────────────┴───────────────────┴────────────────┘

STANDARDE

       C11, POSIX.1-2008.

ISTORIC

       C99, POSIX.1-2001.

AVERTISMENTE

       Aceste  funcții  îngreunează  distincția dintre liniile noi și alte spații albe, ceea ce este deosebit de
       problematic în cazul intrărilor de tip „line-buffered”, cum ar fi fluxul de intrare standard.

       Aceste funcții nu pot raporta erori după ultima specificație de conversie nesuprimată.

ERORI

       Este imposibil să se știe cu exactitate câte caractere au consumat aceste funcții din fluxul de  intrare,
       deoarece  ele  raportează  doar  numărul  de conversii reușite. De exemplu, dacă intrarea este "123\n a",
       scanf("%d %d", &a, &b) va consuma cifrele, linia nouă și spațiul, dar nu și litera a.  Acest  lucru  face
       dificilă recuperarea în cazul unei intrări nevalide.

CONSULTAȚI ȘI

       fgets(3), getline(3), sscanf(3)

TRADUCERE

       Traducerea    în   limba   română   a   acestui   manual   a   fost   făcută   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.

Pagini de manual de Linux 6.9.1                   15 iunie 2024                                         scanf(3)