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

NUME

       wcsnrtombs - convertește un șir de caractere late într-un șir multi-octet

BIBLIOTECA

       Biblioteca C standard (libc, -lc)

REZUMAT

       #include <wchar.h>

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

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

       wcsnrtombs():
           Începând cu glibc 2.10
               _POSIX_C_SOURCE >= 200809L
           Înainte de glibc 2.10:
               _GNU_SOURCE

DESCRIERE

       Funcția wcsnrtombs() este ca și funcția wcsrtombs(3), cu excepția faptului că  numărul  de
       caractere late care urmează să fie convertite, începând de la *src, este limitat la nwc.

       Dacă  dest  nu este NULL, funcția wcsnrtombs() convertește cel mult nwc caractere late din
       șirul de caractere late *src într-un șir multi-octet care începe la dest.   Cel  mult  len
       octeți  sunt  scriși  în  dest.   Se  actualizează  starea de conversie *ps.  Conversia se
       realizează efectiv prin apelarea repetată a wcrtomb(dest, *src, ps), atâta timp cât  acest
       apel  reușește, iar apoi se incrementează dest cu numărul de octeți scriși și *src cu unu.
       Conversia se poate opri din trei motive:

       •  A fost întâlnit un caracter lat care nu poate fi reprezentat ca o secvență de mai mulți
          octeți  (în conformitate cu configurația regională curentă).  În acest caz, *src rămâne
          îndreptat către caracterul lat nevalid,  se  returnează  (size_t) -1,  iar  errno  este
          configurată la EILSEQ.

       •  Caracterele  late  nwc au fost convertite fără a se întâlni un caracter lat nul (L'\0')
          sau limita de lungime forțează o oprire.  În acest caz,  *src  rămâne  îndreptat  către
          următorul  caracter  lat  care urmează să fie convertit, iar numărul de octeți scris în
          dest este returnat.

       •  Șirul de caractere late a fost  complet  convertit,  inclusiv  caracterul  lat  nul  de
          sfârșit  (care  are  ca  efect secundar aducerea lui *ps la starea inițială).  În acest
          caz, *src este setat la NULL, iar  numărul  de  octeți  scriși  în  dest,  cu  excepția
          octetului de sfârșit nul ('\0'), este returnat.

       Dacă dest este NULL, len este ignorat, iar conversia se desfășoară ca mai sus, cu excepția
       faptului că octeții convertiți nu sunt scriși în memorie și  că  nu  există  o  limită  de
       lungime a destinației.

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

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

VALOAREA RETURNATĂ

       Funcția wcsnrtombs() returnează numărul de octeți  care  alcătuiesc  partea  convertită  a
       secvenței  multibyte,  fără  a  include octetul nul de terminare.  În cazul în care a fost
       întâlnit un caracter lat care nu a putut fi  convertit,  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                                               │
       ├─────────────┼───────────────────┼───────────────────────────────────────────────────────┤
       │wcsnrtombs() │ Siguranța firelor │ MT-Unsafe race:wcsnrtombs/!ps                         │
       └─────────────┴───────────────────┴───────────────────────────────────────────────────────┘

STANDARDE

       POSIX.1-2008.

NOTE

       Comportamentul  lui  wcsnrtombs() 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), mbsinit(3), wcsrtombs(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⟩.