mbtowc(3)

NUME
mbtowc - convertește o secvență multioctet într-un caracter lat

BIBLIOTECA
Biblioteca C standard (libc, -lc)

REZUMAT
#include <stdlib.h>

int mbtowc(wchar_t *restrict pwc, const char s[restrict .n], size_t n);

DESCRIERE
Cazul principal pentru această funcție este atunci când s nu este NULL și pwc nu este NULL. În acest caz, funcția mbtowc() inspectează cel mult n octeți din șirul multioctet începând de la s, extrage următorul caracter multioctet complet, îl convertește într-un caracter lat și îl stochează la *pwc. Aceasta actualizează o stare de deplasare internă cunoscută numai de funcția mbtowc(). Dacă s nu indică un octet nul ('\0'), se returnează numărul de octeți care au fost consumați din s, în caz contrar se returnează 0.

În cazul în care n octeți care încep la s nu conțin un caracter multioctet complet sau dacă conțin o secvență multioctet nevalidă, mbtowc() returnează -1. Acest lucru se poate întâmpla chiar dacă n >= MB_CUR_MAX, în cazul în care șirul multioctet conține secvențe de deplasare redundante.

Un caz diferit este atunci când s nu este NULL, dar pwc este NULL. În acest caz, funcția mbtowc() se comportă ca mai sus, cu excepția faptului că nu stochează în memorie caracterul lat convertit.

Un al treilea caz este atunci când s este NULL. În acest caz, pwc și n sunt ignorate. Funcția mbtowc() restabilește starea de deplasare, cunoscută doar de această funcție, la starea inițială și returnează un număr diferit de zero dacă codificarea are o stare de deplasare non-trivială sau zero dacă codificarea este fără stare.

VALOAREA RETURNATĂ
Dacă s nu este NULL, funcția mbtowc() returnează numărul de octeți consumați începând de la s, sau 0 dacă s indică un octet null, sau -1 în caz de eșec.

Dacă s este NULL, funcția mbtowc() returnează un număr diferit de zero dacă codificarea are o stare de deplasare non-trivială sau zero dacă codificarea este fără stare.

ATRIBUTE
Pentru o explicație a termenilor folosiți în această secțiune, a se vedea attributes(7).
Interfață | Atribut | Valoare
mbtowc() | Siguranța firelor | MT-Unsafe race

VERSIUNI
Această funcție nu este sigură pentru mai multe fire. Funcția mbrtowc(3) oferă o interfață mai bună pentru aceeași funcționalitate.

STANDARDE
C11, POSIX.1-2008.

ISTORIC
POSIX.1-2001, C99.

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

CONSULTAȚI ȘI
MB_CUR_MAX(3), mblen(3), mbrtowc(3), mbstowcs(3), wcstombs(3), wctomb(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.