C ++ mblen () - C ++ Standardbibliotek

Funksjonen mblen () i C ++ bestemmer størrelsen (i byte) på et multibyttegn.

Funksjonen mblen () er definert i topptekstfilen.

mblen () prototype (fra og med C ++ 11 standard)

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

Funksjonen mblen () tar to argumenter s og max, og returnerer en heltallverdi. Pekeren s peker på den første byten av et multibytekarakter hvis størrelse returneres av funksjonen.

mblen () Parametere

  • s: Pekeren til den første byten av et multibytegn eller en nullpeker.
  • maks: Maksimalt antall byte i s som kan undersøkes.

mblen () Returverdi

Hvis s er en nullpeker, tilbakestiller et kall til mblen () sin interne konverteringstilstand for å representere den opprinnelige skifttilstanden og returnerer:

  • 0 hvis den nåværende multibytekodingen ikke er tilstandsavhengig (bruker ikke skiftingssekvenser).
  • ikke-null verdi hvis den nåværende multibyte-kodingen er tilstandsavhengig (bruker skift-sekvenser).

Hvis s ikke er en nullpeker, returnerer mblen () -funksjonen:

  • antall byte som finnes i multibyte-tegnet.
  • -1 hvis de første bytene pekt på s ikke danner et gyldig multibyttegn.
  • 0 hvis s peker på nulltegnet ' 0'.

Eksempel: Hvordan fungerer mblen () -funksjonen i 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; )

Når du kjører programmet, vil utdataene være:

 Lengde på multibytekarakter: 1

Interessante artikler...