C ++ mblen () - C ++ standartinė biblioteka

Funkcija „mblen“ (C ++) nustato daugiabačio simbolio dydį (baitais).

Funkcija „mblen ()“ yra apibrėžta antraštės faile.

mblen () prototipas (Pagal C ++ 11 standartą)

 int mblen (const char * s, dydis_t max);

Funkcija „mblen“) užima du argumentus s ir max ir pateikia sveiko skaičiaus vertę. Žymeklis s nurodo pirmąjį daugiabačio simbolio baitą, kurio dydį grąžina funkcija.

mblen () Parametrai

  • s: žymeklis į pirmąjį daugiabačio simbolio baitą arba nulinį rodyklę.
  • max: maksimalus baitų skaičius s, kuriuos galima ištirti.

mblen () Grąžinimo vertė

Jei s yra nulinis rodyklė, iškvietimas „mblen“ () iš naujo nustato savo vidinę konversijos būseną, kad atspindėtų pradinę poslinkio būseną, ir grąžina:

  • 0, jei dabartinė kelių baitų koduotė nepriklauso nuo būsenos (nenaudoja poslinkio sekų).
  • vertė nėra nulis, jei dabartinė kelių baitų koduotė priklauso nuo būsenos (naudojama poslinkio seka).

Jei s nėra nulinis rodyklė, funkcija mblen () grąžinama:

  • baitų, esančių daugiabačiame simbolyje, skaičius.
  • -1, jei pirmieji s nurodyti baitai nesudaro galiojančio daugiabačio simbolio.
  • 0, jei s rodo nulinį simbolį „ 0“.

Pavyzdys: Kaip funkcija mblen () veikia C ++?

 #include #include #include using namespace std; int main() ( int len; char *s = (char *)malloc(20); strcpy(s,"xe4xbdxa0xe5xa5xbd"); /* resets the conversion state */ mblen(NULL, 0); len = mblen(s,strlen(s)); cout << "Length of multibyte character: " << len << endl; return 0; )

Kai paleisite programą, išvestis bus:

 Daugiabačio simbolio ilgis: 1

Įdomios straipsniai...