C ++ wctomb () - C ++ Standardbibliotek

Wctomb () -funksjonen i C ++ konverterer et bredt tegn til et multibyttegn.

Funksjonen wctomb () er definert i topptekstfilen.

wctomb () prototype

 int wctomb (char * pmb, wchar_t wc);

Funksjonen wctomb () tar to argumenter og returnerer en heltallverdi. Denne funksjonen konverterer det brede tegnet representert av wc til dets multibyte ekvivalent og lagres på minneplasseringen pekt av pmb. Maksimalt antall tegn som kan lagres er MB_CUR_MAX .

Hvis wc er nulltegnet, skrives nullbyten til pmb.

Hvis pmb er en nullpeker, vil et anrop til wctomb () nullstille den globale konverteringstilstanden og avgjøre om skiftesekvenser skal brukes.

wctomb () Parametere

  • pmb: peker til den resulterende multibyte-karakteren
  • wc: Bredt tegn som konverteres til multibyte-tegn

wctomb () Returverdi

Hvis pmb ikke er en nullpeker, returnerer wctomb ():

  • antall byte som er inkludert i multibyte-representasjonen av wc.
  • -1 hvis wc ikke er et gyldig tegn.

Hvis pmb er en nullpeker, tilbakestiller den interne konverteringstilstanden til å representere den opprinnelige skifttilstanden og returnerer:

  • 0 hvis den nåværende multibytekodingen ikke er avhengig av staten (bruker ikke skiftingssekvenser)
  • en verdi som ikke er null, hvis den nåværende multibytekodingen er tilstandsavhengig (bruker skift-sekvenser).

Eksempel: Hvordan fungerer wctomb () -funksjonen?

 #include #include using namespace std; int main() ( wchar_t wc = L'x'; char *pmb1 = (char*)malloc(sizeof(char)); char *pmb2 = NULL; int ret_val; cout << "When pmb is not null" << endl; ret_val = wctomb(pmb1, wc); cout << "Return Value = " << ret_val << endl; wcout << "Multibyte Character: " << pmb1 << endl << endl; cout << "When pmb is null" << endl; ret_val = wctomb(pmb2, wc); cout << "Return Value = " << ret_val << endl; wcout << "Multibyte Character: " << pmb2; return(0); )

Når du kjører programmet, vil en mulig utgang være:

 Når pmb ikke er null Returverdi = 1 Multibyttegn: x↨R Når pmb er null Returverdi = 0 Multibyttegn:

Interessante artikler...