C ++ c16rtomb () - Perpustakaan Standard C ++

Fungsi c16rtomb () dalam C ++ menukar perwakilan watak 16 bit kepada perwakilan watak multibait sempit.

Fungsi c16rtomb () ditentukan dalam fail header.

c16rtomb () Prototaip

 size_t c16rtomb (char * s, char16_t c16, mbstate_t * ps);

Fungsi c16rtomb () menukar watak utf-16 c16 kepada setara multibaitnya dan menyimpannya dalam objek yang ditunjukkan oleh s.

Sekiranya s mewakili penunjuk nol, panggilan itu bersamaan dengan c16rtomb (buf, u ' 0', ps) untuk beberapa buf penyangga dalaman.

Sekiranya c16 adalah watak luas nol iaitu u ' 0', bait nol disimpan.

Parameter c16rtomb ()

  • s: Penunjuk ke array watak di mana watak multibait akan disimpan.
  • c16: Watak 16 bit untuk ditukar.
  • ps: Penunjuk ke objek mbstate_t yang digunakan semasa menafsirkan rentetan multibait.

c16rtomb () Nilai pulangan

  • Pada kejayaan, fungsi c16rtomb () mengembalikan bilangan bait yang ditulis ke array watak yang ditunjukkan oleh s.
  • Pada kegagalan, -1 dikembalikan dan EILSEQ disimpan di errno.

Contoh: Bagaimana fungsi c16rtomb () berfungsi?

 #include #include using namespace std; int main() ( const char16_t str() = u"Hello World!"; char s(50); mbstate_t ps(); size_t length; int j = 0; while (str(j)) ( length = c16rtomb(s, str(j), &ps); if ((length == 0) || (length> 50)) break; for (int i=0; i 

When you run the program, the output will be:

 Hello World!

Artikel menarik...