C ++ mblen () - Standardna knjižnica C ++

Funkcija mblen () v jeziku C ++ določa velikost (v bajtih) večbajtnega znaka.

Funkcija mblen () je definirana v datoteki glave.

prototip mblen () (od standarda C ++ 11)

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

Funkcija mblen () vzame dva argumenta s in max in vrne celoštevilčno vrednost. Kazalec s kaže na prvi bajt večbajtnega znaka, katerega funkcijo vrne velikost.

mblen () Parametri

  • s: Kazalec na prvi bajt večbajtnega znaka ali ničelni kazalec.
  • max: največje število bajtov v s, ki jih je mogoče pregledati.

mblen () Vrnjena vrednost

Če je s ničelni kazalec, klic mblen () ponastavi svoje notranje stanje pretvorbe, da predstavlja začetno stanje premika, in vrne:

  • 0, če trenutno večbajtno kodiranje ni odvisno od stanja (ne uporablja zaporedij premikov).
  • ničelna vrednost, če je trenutno večbajtno kodiranje odvisno od stanja (uporablja zaporedja premikov).

Če s ni ničelni kazalec, funkcija mblen () vrne:

  • število bajtov, ki jih vsebuje večbajtni znak.
  • -1, če prvi bajti, na katere kaže s, ne tvorijo veljavnega večbajtnega znaka.
  • 0, če s kaže na ničelni znak ' 0'.

Primer: Kako deluje funkcija mblen () v jeziku 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; )

Ko zaženete program, bo rezultat:

 Dolžina večbajtnega znaka: 1

Zanimive Članki...