C ++ wcstombs () - C ++ Standard Library

Toiminto wcstombs () C ++: ssa muuntaa laajan merkkijonon vastaavaksi monitavuiseksi sekvenssiksi.

Wcstombs () -funktio määritetään otsikkotiedostossa.

wcstombs () -prototyyppi

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

Funktio wcstombs () vie kolme argumenttia ja palauttaa kokonaisluvun.

Tämä toiminto muuntaa leveän merkkijonon, jonka src osoittaa ensimmäisen elementin sen monitavuiseen esitykseen.

Tulos tallennetaan muistin sijaintiin, jonka osoitti kohde. Parametri max edustaa muunnettavien leveiden merkkien enimmäismäärää.

Muunnosmekanismi on sama kuin wctombin, paitsi että wctombin muunnostila ei muutu. Muunnos lopetetaan, jos:

  • Kohditaan tyhjä merkki, joka muunnetaan ja tallennetaan.
  • Löydettiin wchar_t, joka ei vastaa kelvollista merkkiä nykyisessä C-kielessä.
  • leveiden merkkien enimmäismäärä on muunnettu.

wcstombs () -parametrit

  • dest: Osoitin saadulle monitavuiselle merkistöryhmälle.
  • src: Osoitin leveän merkin ensimmäiseen elementtiin, joka muunnetaan monitavuiseksi merkiksi.
  • max: Muunnettavien leveiden merkkien enimmäismäärä.

wcstombs () Palautusarvo

  • Jos muunnos onnistuu, wcstombs () palauttaa monitavuisten merkkien lukumäärän, lukuun ottamatta kohdemerkkiin kirjoitettua lopetusmerkkiä (ts. 0 ').
  • Jos muunnoksen aikana tapahtuu virhe, se palauttaa arvon -1.

Esimerkki: Kuinka wcstombs () -toiminto toimii?

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

Kun suoritat ohjelmaa, mahdollinen tulos on:

 Muunnettujen leveiden merkkien lukumäärä = 24 monitavuista merkkijonoa = Tervetuloa Programiz.com-sivustoon

Mielenkiintoisia artikkeleita...