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

NUME

       strfmon, strfmon_l - convertește o valoare monetară într-un șir de caractere

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <monetary.h>

       ssize_t strfmon(char s[restrict .max], size_t max,
                       const char *restrict format, ...);
       ssize_t strfmon_l(char s[restrict .max], size_t max, locale_t locale,
                       const char *restrict format, ...);

DESCRIERE

       Funcția  strfmon() formatează suma monetară specificată în conformitate cu configurația regională curentă
       și cu specificația de format format și plasează rezultatul în matricea de caractere s de dimensiune max.

       Funcția strfmon_l() îndeplinește aceeași sarcină, dar utilizează configurația  regională  specificată  de
       locale.  Comportamentul  funcției  strfmon_l()  este  nedefinit  în  cazul  în  care locale este obiectul
       parametru special de configurație regională LC_GLOBAL_LOCALE (a se vedea duplocale(3))  sau  nu  este  un
       gestionar de obiect de configurație regională valid.

       Caracterele  obișnuite  din  format  sunt  copiate  în s fără conversie. Specificatorii de conversie sunt
       introduși de un caracter „%”. Imediat după acesta pot  exista  zero  sau  mai  multe  dintre  următoarele
       fanioane:

       =f     Caracterul  de  un  singur  octet  f este utilizat drept caracter de umplere numerică (pentru a fi
              utilizat cu o precizie la stânga, a se  vedea  mai  jos).  Atunci  când  nu  este  specificat,  se
              utilizează caracterul spațiu.

       ^      Nu  utilizează  niciun  caracter de grupare care ar putea fi definit pentru configurația regională
              curentă. În mod implicit, gruparea este activată.

       ( sau +
              Simbolul „(” indică faptul că sumele negative trebuie să fie incluse între paranteze. Simbolul „+”
              indică faptul că semnele trebuie tratate în mod implicit, adică sumele sunt precedate de indicația
              de semn din regiunea respectivă, de exemplu, nimic  pentru  valori  pozitive,  „-”  pentru  valori
              negative.

       !      Omite simbolul monetar.

       -      Aliniază la stânga toate câmpurile. Valoarea implicită este alinierea la dreapta.

       În  continuare, poate exista o lățime a câmpului: un șir de cifre zecimale care specifică o lățime minimă
       a câmpului în octeți. Valoarea implicită este 0. Un rezultat mai mic decât această lățime este  completat
       cu spații (în stânga, cu excepția cazului în care a fost indicat fanionul aliniere-stânga).

       În continuare, poate exista o precizie stânga de forma „#” urmată de un șir de cifre zecimale.În cazul în
       care  numărul  de cifre din stânga caracterului zecimal „,” este mai mic decât acesta, reprezentarea este
       umplută în stânga cu caracterul de umplere numeric. Caracterele de grupare nu sunt luate  în  considerare
       în această lățime de câmp.

       În  continuare,  poate exista o precizie la dreapta de forma „.” urmată de un șir de cifre zecimale. Suma
       care se formatează este rotunjită la numărul specificat de cifre înainte de formatare. Valoarea implicită
       este specificată în elementele frac_digits și int_frac_digits din configurația  regională  curentă.  Dacă
       precizia  dreaptă  este 0, nu se imprimă niciun caracter zecimal „. sau ,”; (caracterul zecimal aici este
       determinat de LC_MONETARY și poate fi diferit de cel specificat de LC_NUMERIC).

       În cele din urmă, specificația de conversie trebuie să se încheie cu un caracter de conversie. Cele  trei
       caractere de conversie sunt

       %      În  acest caz, întreaga specificație trebuie să fie exact „%%”. Introduce un caracter „%” în șirul
              rezultat.

       i      Un argument de tip double este convertit folosind formatul internațional al monedei locale.

       n      Un argument de tip double este convertit folosind formatul național al monedei locale.

VALOAREA RETURNATĂ

       Funcția strfmon() returnează numărul de caractere plasate în matricea s, fără a include  octetul  nul  de
       terminare,  cu  condiția  ca  șirul,  inclusiv  octetul  nul  de  terminare,  să  încapă. În caz contrar,
       configurează errno la E2BIG, returnează -1, iar conținutul matricei este nedefinit.

ATRIBUTE

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

STANDARDE

       POSIX.1-2008.

ISTORIC

       POSIX.1-2001.

EXEMPLE

       Apelarea

           strfmon(buf, sizeof(buf), "[%^=*#6n] [%=*#6i]",
                   1234.567, 1234.567);

       produce

           [€ **1234,57] [EUR **1 234,57]

       în  configurația  regională  nl_NL.   Configurațiile  regionale  de_DE,  de_CH,  en_AU  și  en_GB  produc
       următoarele rezultate

           [ **1234,57 €] [ **1.234,57 EUR]
           [ Fr. **1234.57] [ CHF **1'234.57]
           [ $**1234.57] [ AUD**1,234.57]
           [ £**1234.57] [ GBP**1,234.57]

CONSULTAȚI ȘI

       duplocale(3), setlocale(3), sprintf(3), locale(7)

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                    2 mai 2024                                         strfmon(3)