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

A wcstombs () függvény a C ++ nyelven egy széles karakterláncot konvertál egyenértékű többbájtos szekvenciává.

A wcstombs () függvény a fejlécfájlban van meghatározva.

wcstombs () prototípus

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

A wcstombs () függvény három argumentumot vesz fel, és egész számot ad vissza.

Ez a függvény átalakítja azt a széles karakterláncot, amelynek első elemét az src mutat többbájtos ábrázolássá.

Az eredmény a cél által jelzett memóriahelyen tárolódik. A max paraméter az átalakítandó széles karakterek maximális számát jelöli.

A konverziós mechanizmus megegyezik a wctomb mechanizmusával, azzal a különbséggel, hogy a wctomb konverziós állapota nem változik. Az átalakítás leáll, ha:

  • Null karakter lép fel, amelyet aztán átalakít és tárol.
  • Olyan wchar_t találtak, amely nem felel meg az aktuális C területi beállítás érvényes karakterének.
  • a széles karakterek maximális száma átalakítva.

wcstombs () Paraméterek

  • dest: Az eredményül kapott többbájtos karaktertömb mutatója.
  • src: A széles karakter első elemének mutatója, amelyet többbájtos karakterré alakítanak át.
  • max: Az átalakítandó széles karakterek maximális száma.

wcstombs () Visszatérési érték

  • Ha az átalakítás sikeres, a wcstombs () visszaadja a többbájtos karakterek számát, kivéve a céltömbbe írt befejező karaktert (azaz ' 0').
  • Ha bármilyen hiba történik az átalakítás során, az -1-et ad vissza.

Példa: Hogyan működik a wcstombs () függvény?

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

A program futtatásakor egy lehetséges kimenet lesz:

 Az átalakított széles karakterek száma = 24 többbájtos karakterlánc = Üdvözöljük a Programiz.com oldalon

érdekes cikkek...