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

NUME

       strtod, strtof, strtold - convertesc un șir ASCII în număr în virgulă mobilă

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <stdlib.h>

       double strtod(const char *restrict nptr,
                     char **_Nullable restrict endptr);
       float strtof(const char *restrict nptr,
                     char **_Nullable restrict endptr);
       long double strtold(const char *restrict nptr,
                     char **_Nullable restrict endptr);

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

       strtof(), strtold():
           _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L

DESCRIERE

       Funcțiile  strtod(),  strtof()  și  strtold()  convertesc porțiunea inițială a șirului indicat de nptr în
       reprezentarea double, float și, respectiv, long double.

       Forma așteptată a șirului (porțiunii inițiale a șirului) este un spațiu alb de început  opțional,  astfel
       cum  este  recunoscut de isspace(3), un semn plus („+”) sau minus („-”) opțional și apoi fie (i) un număr
       zecimal, fie (ii) un număr hexazecimal, fie (iii) un infinit, fie (iv) un NAN (not-a-number).

       Un număr zecimal constă dintr-o secvență nevidă de cifre zecimale care poate conține  un  caracter  drept
       separator  zecimal  (semn zecimal, în funcție de configurația regională, de obicei „.”), urmat, opțional,
       de un exponent zecimal. Un exponent zecimal constă dintr-un „E” sau „e”, urmat de un semn plus sau  minus
       opțional, urmat de o secvență nevidă de cifre zecimale, și indică înmulțirea cu o putere de 10.

       Un  număr hexazecimal este format dintr-un „0x” sau „0X” urmat de o secvență nevidă de cifre hexazecimale
       care poate conține un caracter drept separator, urmat, opțional, de un exponent binar. Un exponent  binar
       constă  dintr-un  „P”  sau  „p”,  urmat de un semn plus sau minus opțional, urmat de o secvență nevidă de
       cifre zecimale și indică înmulțirea cu o putere de 2. Trebuie să fie prezent (cel puțin unul dintre  ele)
       fie caracterul cu rol separator, fie exponentul binar.

       Un infinit este fie „INF”, fie „INFINITY”, fără a lua în considerare diferențele dintre ele.

       Un  NAN  este  „NAN” (fără a lua în considerare majusculele și minusculele) urmat, opțional, de un șir de
       caractere, (n-char-sequence), unde n-char-sequence specifică tipul de NAN într-un  mod  care  depinde  de
       implementare (a se vedea secțiunea VERSIUNI).

VALOAREA RETURNATĂ

       Aceste funcții returnează valoarea convertită, dacă există.

       Dacă endptr nu este NULL, în locația la care face referire endptr se stochează un indicator la caracterul
       de după ultimul caracter utilizat în conversie.

       Dacă  nu  se  efectuează  nicio conversie, se returnează zero și (cu excepția cazului în care endptr este
       nul) valoarea lui nptr este stocată în locația la care face referire endptr.

       În cazul în care valoarea corectă ar provoca o depășire, se returnează plus sau minus HUGE_VAL, HUGE_VALF
       sau HUGE_VALL (în funcție de tipul de returnare și de semnul valorii), iar ERANGE este stocat în errno.

       În cazul în care valoarea corectă ar provoca o depășire a limitei minime (ar fi sub valoarea minimă),  se
       returnează  o  valoare  cu  magnitudinea nu mai mare decât DBL_MIN, FLT_MIN sau LDBL_MIN, iar ERANGE este
       stocat în errno.

ERORI-IEȘIRE

       ERANGE A apărut o depășire a limitei superioare/inferioare.

ATRIBUTE

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

VERSIUNI

       În implementarea glibc, secvența n-char-sequence care urmează opțional după „NAN” este interpretată ca un
       număr întreg (cu un prefix opțional „0” sau „0x” pentru a selecta baza 8 sau  16)  care  urmează  să  fie
       plasat în componenta mantisă a valorii returnate.

STANDARDE

       C11, POSIX.1-2008.

ISTORIC

       strtod()
              C89, POSIX.1-2001.

       strtof()
       strtold()
              C99, POSIX.1-2001.

PRECAUȚII

       Deoarece  0  poate  fi  returnat  în  mod legitim atât în caz de succes, cât și în caz de eșec, programul
       apelant ar trebui să stabilească errno la 0 înainte de apel, iar apoi să  determine  dacă  s-a  produs  o
       eroare verificând dacă errno are o valoare diferită de zero după apel.

EXEMPLE

       A se vedea exemplul de pe pagina de manual strtol(3); utilizarea funcțiilor descrise în această pagină de
       manual este similară.

CONSULTAȚI ȘI

       atof(3), atoi(3), atol(3), nan(3), nanf(3), nanl(3), strfromd(3), strtol(3), strtoul(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                   16 iunie 2024                                        strtod(3)