Provided by: manpages-ro-dev_4.21.0-2_all bug

NUME

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

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

REZUMAT

       #include <wchar.h>

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

DESCRIERE

       Dacă  dest nu este NULL, funcția mbsrtowcs() convertește șirul multioctet *src într-un șir
       de caractere largi care începe la dest.  În dest se scriu cel mult len caractere late.  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.

       •  len 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, len 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().

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

VALOAREA RETURNATĂ

       Funcția mbsrtowcs() returnează numărul de caractere late care alcătuiesc partea convertită
       a șirului de caractere late, fără a include caracterul lat nul de sfârșit.   Î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

       POSIX.1-2001, POSIX.1-2008, 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  creată  de Remus-Gabriel Chelu
       <remusgabriel.chelu@disroot.org>

       Această  traducere  este  documentație  gratuită;  citiți  Licența  publică  generală  GNU
       Versiunea  3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  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⟩.