C ++ wctomb () - C ++ Standardbibliotek

Funktionen wctomb () i C ++ konverterar ett brett tecken till ett multibyt-tecken.

Funktionen wctomb () definieras i rubrikfilen.

wctomb () prototyp

 int wctomb (char * pmb, wchar_t wc);

Funktionen wctomb () tar två argument och returnerar ett heltalvärde. Denna funktion omvandlar den breda karaktären som representeras av wc till dess multibytekvivalent och lagras på minnesplatsen pekad av pmb. Det maximala antalet tecken som kan lagras är MB_CUR_MAX .

Om wc är nollkaraktären skrivs nollbyten till pmb.

Om pmb är en nollpekare kommer ett samtal till wctomb () att återställa det globala omvandlingstillståndet och avgöra om skiftningssekvenser används.

wctomb () Parametrar

  • pmb: Pekare till den resulterande multibytkaraktären
  • wc: Bred karaktär som omvandlas till multibyte-tecken

wctomb () Returvärde

Om pmb inte är en nollpekare returnerar wctomb ():

  • antalet byte som ingår i multibyte-representationen av wc.
  • -1 om wc inte är ett giltigt tecken.

Om pmb är en nollpekare återställs dess interna omvandlingstillstånd för att representera det initiala skifttillståndet och returnerar:

  • 0 om den nuvarande multibytkodningen inte är tillståndsberoende (använder inte skiftningssekvenser)
  • ett icke-nollvärde om den aktuella multibyte-kodningen är tillståndsberoende (använder skiftningssekvenser).

Exempel: Hur fungerar wctomb ()?

 #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 kör programmet blir en möjlig utdata:

 När pmb inte är null Returvärde = 1 Multibytkaraktär: x↨R När pmb är null Returnvärde = 0 Multibytkaraktär:

Intressanta artiklar...