C ++ mblen () - C ++ standardraamatukogu

Funktsioon mblen () funktsioonis C ++ määrab mitmebaidise märgi suuruse (baitides).

Funktsioon mblen () on määratletud päisefailis.

mblen () prototüüp (standardi C ++ 11 järgi)

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

Funktsioon mblen () võtab kaks argumenti s ja max ning tagastab täisarvu. Kursor s osutab mitmebaidise märgi esimesele baidile, mille suurus tagastab funktsioon.

mblen () Parameetrid

  • s: mitmebaidise märgi esimese nullbaidi või nullkursori osuti.
  • max: maksimaalne uuritavate baitide arv sekundites.

mblen () Tagastusväärtus

Kui s on nullkursor, lähtestab kutse mblen () selle sisemise teisenduse oleku tähistama algset nihkeolekut ja tagastab:

  • 0, kui praegune mitmebaidine kodeering ei sõltu olekust (ei kasuta nihkejärjestusi).
  • nullist erinev väärtus, kui praegune mitmebaidine kodeering sõltub olekust (kasutab nihkjärjestusi).

Kui s pole nullkursor, tagastab funktsioon mblen ():

  • mitmebaidises märgis sisalduvate baitide arv.
  • -1, kui esimesed baidid, millele s osutab, ei moodusta kehtivat mitmebaidist tähemärki.
  • 0, kui s osutab nullmärgile ' 0'.

Näide: Kuidas funktsioon mblen () töötab C ++ -s?

 #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; )

Programmi käivitamisel on väljund järgmine:

 Mitmebaidise tähemärgi pikkus: 1

Huvitavad Artiklid...