C ++ wcstombs () - C ++ Standardbibliotek

Funktionen wcstombs () i C ++ konverterar en bred teckensträng till motsvarande multibytsekvens.

Funktionen wcstombs () definieras i rubrikfilen.

wcstombs () prototyp

 size_t wcstombs (char * dest, const wchar_t * src, size_t max);

Funktionen wcstombs () tar tre argument och returnerar ett heltal.

Denna funktion konverterar den breda teckensträngen vars första element pekas av src till dess multibyte-representation.

Resultatet lagras på minnesplatsen som dest. Parametern max representerar det maximala antalet breda tecken som ska konverteras.

Omvandlingsmekanismen är densamma som för wctomb, förutom att wctomb-omvandlingstillståndet inte påverkas. Konverteringen stoppar om:

  • En noll karaktär påträffas som sedan konverteras och lagras.
  • En wchar_t hittades som inte motsvarar ett giltigt tecken i det aktuella C-området.
  • maximalt antal breda tecken har konverterats.

wcstombs () Parametrar

  • dest: Pekare till det resulterande multibyte-teckensystemet.
  • src: Pekare till det första elementet i den breda karaktären som omvandlas till multibytkaraktär.
  • max: Maximalt antal breda tecken som ska konverteras.

wcstombs () Returvärde

  • Om konverteringen lyckas returnerar wcstombs () antalet multibyt-tecken exklusive det avslutande tecknet (dvs. ' 0') som skrivs till destinationsmatrisen.
  • Om något fel inträffar under konverteringen returnerar det -1.

Exempel: Hur fungerar wcstombs ()?

 #include #include using namespace std; int main() ( wchar_t src() = L"Welcome To Programiz.com"; char dest(50); int num; num = wcstombs(dest, src, 50); cout << "Number of wide character converted = " << num << endl; cout << "Multibyte Character String = " << dest << endl; return 0; )

När du kör programmet blir en möjlig utdata:

 Antal breda tecken konverterade = 24 Multibyt-teckensträng = Välkommen till Programiz.com

Intressanta artiklar...