.\" -*- coding: UTF-8 -*- '\" t .\" Copyright (c) 1990, 1991 The Regents of the University of California. .\" All rights reserved. .\" .\" This code is derived from software contributed to Berkeley by .\" the American National Standards Committee X3, on Information .\" Processing Systems. .\" .\" SPDX-License-Identifier: BSD-4-Clause-UC .\" .\" @(#)strtod.3 5.3 (Berkeley) 6/29/91 .\" .\" Modified Sun Aug 21 17:16:22 1994 by Rik Faith (faith@cs.unc.edu) .\" Modified Sat May 04 19:34:31 MET DST 1996 by Michael Haardt .\" (michael@cantor.informatik.rwth-aachen.de) .\" Added strof, strtold, aeb, 2001-06-07 .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH strtod 3 "20 iulie 2023" "Pagini de manual de Linux 6.05.01" .SH NUME strtod, strtof, strtold \- convertesc un șir ASCII în număr în virgulă mobilă .SH BIBLIOTECA Biblioteca C standard (\fIlibc\fP, \fI\-lc\fP) .SH REZUMAT .nf \fB#include \fP .PP \fBdouble strtod(const char *restrict \fP\fInptr\fP\fB, char **restrict \fP\fIendptr\fP\fB);\fP \fBfloat strtof(const char *restrict \fP\fInptr\fP\fB, char **restrict \fP\fIendptr\fP\fB);\fP \fBlong double strtold(const char *restrict \fP\fInptr\fP\fB, char **restrict \fP\fIendptr\fP\fB);\fP .fi .PP .RS -4 Cerințe pentru macrocomenzi de testare a caracteristicilor pentru glibc (consultați \fBfeature_test_macros\fP(7)): .RE .PP \fBstrtof\fP(), \fBstrtold\fP(): .nf _ISOC99_SOURCE || _POSIX_C_SOURCE >= 200112L .fi .SH DESCRIERE Funcțiile \fBstrtod\fP(), \fBstrtof\fP() și \fBstrtold\fP() convertesc porțiunea inițială a șirului indicat de \fInptr\fP în reprezentarea \fIdouble\fP, \fIfloat\fP și, respectiv, \fIlong double\fP. .PP 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 \fBisspace\fP(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). .PP Un \fInumăr zecimal\fP 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. .PP Un \fInumăr hexazecimal\fP 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. .PP Un \fIinfinit\fP este fie „INF”, fie „INFINITY”, fără a lua în considerare diferențele dintre ele. .PP Un \fINAN\fP este „NAN” (fără a lua în considerare majusculele și minusculele) urmat, opțional, de un șir de caractere, \fI(n\-char\-sequence)\fP, unde \fIn\-char\-sequence\fP specifică tipul de NAN într\-un mod care depinde de implementare (a se vedea secțiunea NOTE). .SH "VALOAREA RETURNATĂ" Aceste funcții returnează valoarea convertită, dacă există. .PP Dacă \fIendptr\fP nu este NULL, în locația la care face referire \fIendptr\fP se stochează un indicator la caracterul de după ultimul caracter utilizat în conversie. .PP Dacă nu se efectuează nicio conversie, se returnează zero și (cu excepția cazului în care \fIendptr\fP este nul) valoarea lui \fInptr\fP este stocată în locația la care face referire \fIendptr\fP. .PP În cazul în care valoarea corectă ar provoca o depășire, se returnează plus sau minus \fBHUGE_VAL\fP, \fBHUGE_VALF\fP sau \fBHUGE_VALL\fP (în funcție de tipul de returnare și de semnul valorii), iar \fBERANGE\fP este stocat în \fIerrno\fP. .PP Î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 \fBDBL_MIN\fP, \fBFLT_MIN\fP sau \fBLDBL_MIN\fP, iar \fBERANGE\fP este stocat în \fIerrno\fP. .SH ERORI\-IEȘIRE .TP \fBERANGE\fP A apărut o depășire a limitei superioare/inferioare. .SH ATRIBUTE Pentru o explicație a termenilor folosiți în această secțiune, a se vedea \fBattributes\fP(7). .TS allbox; lbx lb lb l l l. Interfață Atribut Valoare T{ .na .nh \fBstrtod\fP(), \fBstrtof\fP(), \fBstrtold\fP() T} Siguranța firelor MT\-Safe locale .TE .sp 1 .SH VERSIUNI .\" From glibc 2.8's stdlib/strtod_l.c: .\" We expect it to be a number which is put in the .\" mantissa of the number. .\" It looks as though at least FreeBSD (according to the manual) does .\" something similar. .\" C11 says: "An implementation may use the n-char sequence to determine .\" extra information to be represented in the NaN's significant." În implementarea glibc, secvența \fIn\-char\-sequence\fP 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. .SH STANDARDE C11, POSIX.1\-2008. .SH ISTORIC .TP \fBstrtod\fP() C89, POSIX.1\-2001. .TP \fBstrtof\fP() .TQ \fBstrtold\fP() C99, POSIX.1\-2001. .SH NOTE 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ă \fIerrno\fP la 0 înainte de apel, iar apoi să determine dacă s\-a produs o eroare verificând dacă \fIerrno\fP are o valoare diferită de zero după apel. .SH EXEMPLE A se vedea exemplul de pe pagina de manual \fBstrtol\fP(3); utilizarea funcțiilor descrise în această pagină de manual este similară. .SH "CONSULTAȚI ȘI" \fBatof\fP(3), \fBatoi\fP(3), \fBatol\fP(3), \fBnan\fP(3), \fBnanf\fP(3), \fBnanl\fP(3), \fBstrfromd\fP(3), \fBstrtol\fP(3), \fBstrtoul\fP(3) .PP .SH TRADUCERE Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu . .PP Această traducere este documentație gratuită; citiți .UR https://www.gnu.org/licenses/gpl-3.0.html Licența publică generală GNU Versiunea 3 .UE sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE. .PP Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la .MT translation-team-ro@lists.sourceforge.net .ME .