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

NUME

       mbsrtowcs - convertește un șir de caractere multioctet într-un șir de caractere late (repornibil)

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

SINOPSIS

       #include <wchar.h>

       size_t mbsrtowcs(wchar_t dest[restrict .dsize],
                        const char **restrict src,
                        size_t dsize, mbstate_t *restrict ps);

DESCRIERE

       Dacă  dest  nu este NULL, convertește șirul multi-octet *src într-un șir de caractere late care începe la
       dest. Cel mult dsize caractere late sunt scrise  în  dest.  Se  actualizează  starea  de  conversie  *ps.
       Conversia  se realizează efectiv prin apelarea repetată a mbrtowc(dest, *src, n, ps) unde n este un număr
       pozitiv, atâta timp cât acest apel reușește, și apoi prin incrementarea dest cu unu și *src cu numărul de
       octeți consumați. Conversia se poate opri din trei motive:

       •  A fost întâlnită o secvență multiocteți nevalidă. În acest caz, *src rămâne  indicând  către  secvența
          multiocteți nevalidă, (size_t) -1 este returnată, iar errno este configurată la EILSEQ.

       •  dsize  caractere non-L'\0' late au fost stocate la dest. În acest caz, *src rămâne indicând următoarea
          secvență multioctet care urmează să fie convertită, iar numărul de caractere late scrise în dest  este
          returnat.

       •  Șirul  multioctet  a fost complet convertit, inclusiv caracterul lat nul de la sfârșit ('\0'), ceea ce
          are ca efect secundar aducerea lui *ps la starea inițială. În acest caz, *src este stabilit la NULL și
          se returnează numărul de caractere largi scrise în dest, cu excepția caracterului lat nul de sfârșit.

       Dacă dest este NULL, dsize este ignorat, iar conversia se desfășoară ca mai sus, cu excepția faptului  că
       nu sunt scrise în memorie caracterele late convertite și că nu există o limită de lungime.

       În  ambele  cazuri  de  mai  sus,  în cazul în care ps este NULL, se utilizează în schimb o stare statică
       anonimă cunoscută doar de funcția mbsrtowcs().

       Pentru a evita cazul 2 de mai sus, programatorul trebuie să se asigure că dsize este mai mare sau egal cu
       mbsrtowcs(NULL,src,0,ps)+1.

       Programatorul trebuie să se asigure că există spațiu pentru cel puțin dsize caractere la dest.

       Această funcție este o versiune repornibilă a mbstowcs(3).

VALOAREA RETURNATĂ

       Numărul de caractere late care alcătuiesc partea convertită a șirului de caractere late, fără  a  include
       caracterul  lat  de  încheiere  nul. În cazul în care a fost întâlnită o secvență multioctet nevalidă, se
       returnează (size_t) -1, iar errno este configurată la EILSEQ.

ATRIBUTE

       Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
       ┌─────────────┬───────────────────┬─────────────────────────────────────────────────────────────────────┐
       │ InterfațăAtributValoare                                                             │
       ├─────────────┼───────────────────┼─────────────────────────────────────────────────────────────────────┤
       │ mbsrtowcs() │ Siguranța firelor │ MT-Unsafe race:mbsrtowcs/!ps                                        │
       └─────────────┴───────────────────┴─────────────────────────────────────────────────────────────────────┘

STANDARDE

       C11, POSIX.1-2008.

ISTORIC

       POSIX.1-2001, C99.

NOTE

       Comportamentul lui mbsrtowcs() depinde de categoria LC_CTYPE din configurația regională curentă.

       Transmiterea lui NULL ca ps nu este sigură pentru execuția cu mai multe fire.

CONSULTAȚI ȘI

       iconv(3), mbrtowc(3), mbsinit(3), mbsnrtowcs(3), mbstowcs(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                                     mbsrtowcs(3)