wcrtomb(3) Library Functions Manual wcrtomb(3)

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

Biblioteca C standard (libc, -lc)

#include <wchar.h>
size_t wcrtomb(char *restrict s, wchar_t wc, mbstate_t *restrict ps);

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().

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.

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

C11, POSIX.1-2008.

POSIX.1-2001, C99.

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.

mbsinit(3), wcsrtombs(3)

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.

2 mai 2024 Pagini de manual de Linux 6.8