C ++ wctomb () - Perpustakaan Standard C ++

Fungsi wctomb () dalam C ++ menukar watak luas menjadi watak multibait.

Fungsi wctomb () ditentukan dalam fail header.

prototaip wctomb ()

 int wctomb (char * pmb, wchar_t wc);

Fungsi wctomb () mengambil dua argumen dan mengembalikan nilai integer. Fungsi ini menukar watak lebar yang diwakili oleh wc kepada setara multibait dan disimpan di lokasi memori yang ditunjukkan oleh pmb. Bilangan maksimum aksara yang boleh disimpan ialah MB_CUR_MAX .

Sekiranya wc adalah watak nol, bait nol ditulis ke pmb.

Sekiranya pmb adalah penunjuk nol, panggilan ke wctomb () akan menetapkan semula keadaan penukaran global dan menentukan sama ada urutan peralihan digunakan.

Parameter wctomb ()

  • pmb: Penunjuk kepada watak multibait yang dihasilkan
  • wc: Watak lebar yang ditukar kepada watak multibait

wctomb () Nilai pulangan

Sekiranya pmb bukan penunjuk kosong, wctomb () mengembalikan:

  • bilangan bait yang terkandung dalam perwakilan multibait wc.
  • -1 jika wc bukan watak yang sah.

Sekiranya pmb adalah penunjuk nol, tetapkan semula keadaan penukaran dalamannya untuk mewakili keadaan peralihan awal dan kembali:

  • 0 jika pengekodan multibait semasa tidak bergantung kepada keadaan (tidak menggunakan urutan peralihan)
  • nilai bukan sifar jika pengekodan multibait semasa bergantung pada keadaan (menggunakan urutan peralihan).

Contoh: Bagaimana fungsi wctomb () berfungsi?

 #include #include using namespace std; int main() ( wchar_t wc = L'x'; char *pmb1 = (char*)malloc(sizeof(char)); char *pmb2 = NULL; int ret_val; cout << "When pmb is not null" << endl; ret_val = wctomb(pmb1, wc); cout << "Return Value = " << ret_val << endl; wcout << "Multibyte Character: " << pmb1 << endl << endl; cout << "When pmb is null" << endl; ret_val = wctomb(pmb2, wc); cout << "Return Value = " << ret_val << endl; wcout << "Multibyte Character: " << pmb2; return(0); )

Semasa anda menjalankan program, output yang mungkin adalah:

 Bila pmb tidak Nilai Kembali Nol = 1 Watak Multibait: x↨R Apabila pmb adalah Nilai Pulangan nol = 0 Watak Multibait:

Artikel menarik...