C ++ wctomb () - C ++ standarta bibliotēka

Funkcija wctomb () C ++ pārveido plašu rakstzīmi par daudzbaitu rakstzīmi.

Funkcija wctomb () ir definēta galvenes failā.

wctomb () prototips

 int wctomb (char * pmb, wchar_t wc);

Funkcija wctomb () aizņem divus argumentus un atgriež veselu skaitli. Šī funkcija pārvērš plašo rakstzīmi, ko attēlo wc, par tās daudzbaitu ekvivalentu un tiek saglabāta atmiņas vietā, kuru norāda pmb. Maksimālais saglabājamo rakstzīmju skaits ir MB_CUR_MAX .

Ja wc ir nulles raksturs, nulles baits tiek ierakstīts pmb.

Ja pmb ir nulles rādītājs, izsaukums uz wctomb () atiestatīs globālo konversijas stāvokli un noteiks, vai tiek izmantotas nobīdes secības.

wctomb () parametri

  • pmb: rādītājs uz iegūto daudzbaitu raksturu
  • wc: plats raksturs, kas tiek pārveidots par daudzbaitu rakstzīmi

wctomb () Atgriešanās vērtība

Ja pmb nav nulles rādītājs, wctomb () atgriež:

  • baitu skaits, kas ir ietverts wc daudzbaitu attēlojumā.
  • -1, ja wc nav derīgs raksturs.

Ja pmb ir nulles rādītājs, tas atiestata tā iekšējo pārveidošanas stāvokli, lai attēlotu sākotnējo maiņas stāvokli, un atgriež:

  • 0, ja pašreizējā daudzbaitu kodēšana nav atkarīga no stāvokļa (neizmanto maiņas secības)
  • vērtība, kas nav nulle, ja pašreizējais daudzbaitu kodējums ir atkarīgs no stāvokļa (izmanto maiņu secības).

Piemērs: Kā darbojas wctomb () funkcija?

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

Palaidot programmu, iespējamā izeja būs:

 Ja pmb nav null, atgriešanās vērtība = 1 daudzbaitu raksturs: x↨R, kad pmb ir null. Atgriešanās vērtība = 0 daudzbaitu raksturs:

Interesanti raksti...