Funktionen mbstowcs () i C ++ konverterar en multibyt-teckensträng till motsvarande bred karaktärsekvens.
Funktionen mbstowcs () definieras i rubrikfilen.
mbstowcs () prototyp
size_t mbstowcs (wchar_t * dest, const char * src, size_t max);
Funktionen mbstowcs () tar tre argument och returnerar ett heltalvärde.
Denna funktion konverterar multibyte-teckensträngen vars första element pekas av src till dess breda karaktär (värde av typen wchar_t).
Resultatet lagras på minnesplatsen som dest. Parametern max representerar det maximala antalet multibyt-tecken som ska konverteras.
Omvandlingsmekanismen är densamma som för mbtowc (), förutom att mbtowc-omvandlingstillståndet inte påverkas. Konverteringen stoppar om:
- En noll karaktär påträffas som sedan konverteras och lagras.
 - En ogiltig multibytkaraktär påträffas.
 - maximalt antal multibyte-tecken har konverterats.
 
mbstowcs () Parametrar
- dest: Pekare till den resulterande breda karaktärsuppsättningen.
 - src: Pekare till det första elementet i multibytkaraktären som omvandlas till bred karaktär.
 - max: Maximalt antal multibyt-tecken som ska konverteras.
 
mbstowcs () Returvärde
- Om konverteringen lyckas returnerar mbstowcs () antalet breda 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 mbstowcs () -funktionen?
 #include #include using namespace std; int main() ( char src() = "xc4xe3xbaxc3"; wchar_t dest(10); int num; num = mbstowcs(dest, src, MB_CUR_MAX); cout << "Number of wide character converted = " << num << endl; wcout << "Wide Character String = " << dest << endl; return 0; )
När du kör programmet blir en möjlig utdata:
Antal konverterade breda tecken = 1 Bred karaktärssträng = ─








