C ++ wcstombs () - Perpustakaan Standard C ++

Fungsi wcstombs () dalam C ++ menukar rentetan watak yang luas kepada urutan multibait yang setara.

Fungsi wcstombs () ditentukan dalam fail header.

prototaip wcstombs ()

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

Fungsi wcstombs () mengambil tiga argumen dan mengembalikan nilai integer.

Fungsi ini menukar rentetan watak lebar yang elemen pertamanya ditunjuk oleh src ke perwakilan multibaitnya.

Hasilnya disimpan di lokasi memori yang ditunjukkan oleh dest. Parameter maks mewakili bilangan maksimum watak lebar yang akan ditukar.

Mekanisme penukaran sama dengan wctomb, kecuali bahawa keadaan penukaran wctomb tidak terjejas. Penukaran berhenti jika:

  • Watak null ditemui, yang kemudian ditukar dan disimpan.
  • Wchar_t dijumpai yang tidak sesuai dengan watak yang sah di tempat C semasa.
  • bilangan maksimum watak lebar telah ditukar.

wcstombs () Parameter

  • dest: Penunjuk ke susunan watak multibait yang dihasilkan.
  • src: Penunjuk ke elemen pertama watak luas yang ditukar kepada watak multibait.
  • maks: Bilangan maksimum watak lebar yang hendak ditukar.

wcstombs () Nilai pulangan

  • Sekiranya penukaran berjaya, wcstombs () mengembalikan bilangan aksara multibait kecuali watak penamat (iaitu ' 0') yang ditulis ke array tujuan.
  • Sekiranya terdapat ralat semasa penukaran, ia akan mengembalikan -1.

Contoh: Bagaimana fungsi wcstombs () berfungsi?

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

Semasa anda menjalankan program, output yang mungkin adalah:

 Bilangan watak lebar yang ditukar = 24 String Watak Multibait = Selamat Datang Ke Programiz.com

Artikel menarik...