wcrtomb(3)

NUME
wcrtomb - convertește un caracter lat într-o secvență multi-octet

BIBLIOTECA
Biblioteca C standard (libc, -lc)

REZUMAT
#include <wchar.h>

size_t wcrtomb(char *restrict s, wchar_t wc, mbstate_t *restrict ps);

DESCRIERE
Principalul caz pentru această funcție este atunci când s nu este NULL și wc nu este un caracter lat nul (L'\0'). În acest caz, funcția wcrtomb() convertește caracterul lat wc în reprezentarea sa multi-octet și îl stochează la începutul matricei de caractere indicată de s. Aceasta actualizează starea de conversie *ps și returnează lungimea reprezentării multi-octet menționate, adică numărul de octeți scriși în s.

Un caz diferit este atunci când s nu este NULL, dar wc este un caracter lat nul (L'\0'). În acest caz, funcția wcrtomb() stochează în matricea de caractere indicată de s secvența de conversie necesară pentru a aduce *ps înapoi la starea inițială, urmată de un octet '\0'. Actualizează starea de conversie *ps (adică o aduce în starea inițială) și returnează lungimea secvenței de deplasare plus unu, adică numărul de octeți scriși în s.

Un al treilea caz este atunci când s este NULL. În acest caz, wc este ignorat, iar funcția returnează efectiv

    wcrtomb(buf, L'\0', ps)

unde buf este un spațiu tampon intern (de memorie) anonim.

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

VALOAREA RETURNATĂ
Funcția wcrtomb() returnează numărul de octeți care au fost sau ar fi fost scriși în matricea de octeți la s. Dacă wc nu poate fi reprezentat ca o secvență de mai mulți octeți (în conformitate cu configurația regională curentă), 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ță | Atribut | Valoare
wcrtomb() | Siguranța firelor | MT-Unsafe race:wcrtomb/!ps

STANDARDE
C11, POSIX.1-2008.

ISTORIC
POSIX.1-2001, C99.

NOTE
Comportamentul lui wcrtomb() 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
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.