Fungsi c32rtomb () di C ++ mengonversi karakter 32 bit menjadi representasi ke representasi karakter multibyte sempit.
Fungsi c32rtomb () didefinisikan dalam file header.
c32rtomb () prototipe
size_t c32rtomb (char * s, char32_t c32, mbstate_t * ps);
Fungsi c32rtomb () mengonversi karakter utf-32 c32 menjadi padanan multibyte dan menyimpannya di objek yang ditunjukkan oleh s.
Jika s merepresentasikan null pointer, panggilan tersebut setara dengan c32rtomb (buf, U ' 0', ps) untuk beberapa buf buffer internal.
Jika c32 adalah karakter lebar null yaitu U ' 0', byte nol disimpan.
c32rtomb () Parameter
- s: Menunjuk ke larik karakter tempat karakter multibyte disimpan.
- c32: Karakter 32 bit yang akan diubah.
- ps: Penunjuk ke objek mbstate_t yang digunakan saat menafsirkan string multibyte.
c32rtomb () Nilai kembali
- Jika berhasil, fungsi c32rtomb () mengembalikan jumlah byte yang ditulis ke larik karakter yang ditunjukkan oleh s.
- Jika gagal, -1 dikembalikan dan errno disetel ke EILSEQ .
Contoh: Bagaimana fungsi c32rtomb () bekerja?
#include #include using namespace std; int main() ( const char32_t str() = U"C++ is super fast."; char s(50); mbstate_t ps(); size_t length; int j = 0; while (str(j)) ( length = c32rtomb(s, str(j), &ps); if ((length == 0) || (length> 50)) break; for (int i=0; i
When you run the program, the output will be:
C++ is super fast.