Fungsi mblen () dalam C ++ menentukan ukuran (dalam bait) watak multibait.
Fungsi mblen () ditentukan dalam fail header.
prototaip mblen () (Seperti standard C ++ 11)
int mblen (const char * s, size_t max);
Fungsi mblen () mengambil dua argumen s dan max, dan mengembalikan nilai integer. Penunjuk menunjukkan bait pertama watak multibait yang ukurannya dikembalikan oleh fungsi.
mblen () Parameter
- s: Penunjuk ke bait pertama watak multibait atau penunjuk kosong.
- maks: Bilangan maksimum bait dalam s yang dapat diperiksa.
mblen () Nilai pulangan
Sekiranya s adalah penunjuk nol, panggilan ke mblen () menetapkan semula keadaan penukaran dalamannya untuk mewakili keadaan peralihan awal dan kembali:
- 0 jika pengekodan multibait semasa tidak bergantung kepada keadaan (tidak menggunakan urutan shift).
- nilai bukan sifar jika pengekodan multibait semasa bergantung pada keadaan (menggunakan urutan peralihan).
Sekiranya s bukan penunjuk nol, fungsi mblen () mengembalikan:
- bilangan bait yang terkandung dalam watak multibait.
- -1 jika bait pertama yang ditunjukkan oleh s tidak membentuk watak multibait yang sah.
- 0 jika s menunjuk pada watak null ' 0'.
Contoh: Bagaimana fungsi mblen () berfungsi di C ++?
#include #include #include using namespace std; int main() ( int len; char *s = (char *)malloc(20); strcpy(s,"xe4xbdxa0xe5xa5xbd"); /* resets the conversion state */ mblen(NULL, 0); len = mblen(s,strlen(s)); cout << "Length of multibyte character: " << len << endl; return 0; )
Semasa anda menjalankan program, outputnya adalah:
Panjang watak multibait: 1