Bagikan melalui


Klasifikasi byte

Masing-masing rutinitas ini menguji byte tertentu dari karakter multibyte untuk kepuasan kondisi. Kecuali jika ditentukan lain, nilai output dipengaruhi oleh pengaturan LC_CTYPE pengaturan kategori lokal. Untuk informasi selengkapnya, lihat setlocale . Versi fungsi-fungsi ini tanpa _l akhiran menggunakan lokal saat ini untuk perilaku tergantung lokal ini; versi dengan _l akhiran identik kecuali bahwa mereka menggunakan parameter lokal yang diteruskan sebagai gantinya.

Catatan

Menurut definisi, karakter ASCII antara 0 dan 127 adalah subset dari semua set karakter multibyte. Misalnya, set karakter katakana Jepang mencakup ASCII serta karakter non-ASCII.

Konstanta yang telah ditentukan sebelumnya dalam tabel berikut didefinisikan dalam <ctype.h>.

Rutinitas klasifikasi byte karakter multibyte

Rutin Kondisi Uji Byte
isleadbyte, _isleadbyte_l Byte pimpin; hasil pengujian tergantung pada LC_CTYPE pengaturan kategori lokal saat ini
_ismbbalnum, _ismbbalnum_l isalnum || _ismbbkalnum
_ismbbalpha, _ismbbalpha_l isalpha || _ismbbkalpha
_ismbbgraph, _ismbbgraph_l Sama seperti _ismbbprint, tetapi _ismbbgraph tidak menyertakan karakter spasi (0x20)
_ismbbkalnum, _ismbbkalnum_l Simbol teks non-ASCII selain tanda baca. Misalnya, di halaman kode hanya 932, _ismbbkalnum pengujian untuk alfanumerik katakana
_ismbbkana, _ismbbkana_l Katakana (0xA1 - 0xDF), hanya halaman kode 932
_ismbbkprint, _ismbbkprint_l Teks non-ASCII atau simbol tanda baca non-ASCII. Misalnya, hanya di halaman kode 932, _ismbbkprint pengujian untuk tanda baca alfanumerik katakana atau katakana (rentang: 0xA1 - 0xDF).
_ismbbkpunct, _ismbbkpunct_l Tanda baca non-ASCII. Misalnya, di halaman kode hanya 932, _ismbbkpunct pengujian untuk tanda baca katakana.
_ismbblead, _ismbblead_l Byte pertama karakter multibyte. Misalnya, di halaman kode hanya 932, rentang yang valid 0x81 - 0x9F, 0xE0 - 0xFC.
_ismbbprint, _ismbbprint_l isprint || _ismbbkprint. ismbbprint menyertakan karakter spasi (0x20)
_ismbbpunct, _ismbbpunct_l ispunct || _ismbbkpunct
_ismbbtrail, _ismbbtrail_l Byte kedua karakter multibyte. Misalnya, di halaman kode hanya 932, rentang yang valid 0x40 - 0x7E, 0x80 - 0xEC.
_ismbslead, _ismbslead_l Byte prospek (dalam konteks string)
ismbstrail, _ismbstrail_l Byte jejak (dalam konteks string)
_mbbtype, _mbbtype_l Mengembalikan jenis byte berdasarkan byte sebelumnya
_mbsbtype, _mbsbtype_l Jenis pengembalian byte dalam string
mbsinit Melacak status konversi karakter multibyte.

MB_LEN_MAX Makro, yang didefinisikan dalam <limits.h>, meluas ke panjang maksimum dalam byte yang dapat dimiliki karakter multibyte. MB_CUR_MAX, didefinisikan dalam <stdlib.h>, diperluas ke panjang maksimum dalam byte karakter multibyte apa pun di lokal saat ini.

Baca juga

Rutinitas runtime Universal C menurut kategori