_ismbb ルーチン

現在のロケールまたは指定した変換状態カテゴリを使用して、特定の条件に対して指定されたLC_CTYPE整数値cをテストします。

解説

_ismbb ファミリのすべてのルーチンは、特定の条件に対して整数値 c をテストします。 テスト結果は、有効なマルチバイト コード ページによって異なります。 既定では、マルチバイト コード ページは、プログラムの開始時にオペレーティング システムから取得した ANSI コード ページに設定されます。 使用中のマルチバイト コード ページを照会したり、変更したり_setmbcpするために使用_getmbcpできます。

出力値は、ロケールのカテゴリ設定のLC_CTYPE設定の影響を受けます。詳細については、「」_wsetlocaleを参照してくださいsetlocale。 サフィックスを持 _l たないこれらの関数のバージョンでは、このロケールに依存する動作に現在のロケールが使用されます。サフィックスを持つ _l バージョンは同じですが、代わりに渡されるロケール パラメーターを使用する点が異なります。

_ismbb ファミリのルーチンは、特定の整数 c を次のようにテストします。

ルーチンによって返される値 バイト テスト条件
_ismbbalnum isalnum(c) || _ismbbkalnum(c)
_ismbbalpha isalpha(c) || _ismbbkalpha(c)
_ismbbblank isblank(c)
_ismbbgraph _ismbbprintと同じですが、_ismbbgraphスペース文字は含まれません (0x20)
_ismbbkalnum 区切り記号以外の非 ASCII テキストの記号。 たとえば、コード ページ 932 でのみ _ismbbkalnum は、カタカナ英数字をテストします
_ismbbkana カタカナ (0xA1 - 0xDF)。 コード ページ 932 に固有
_ismbbkprint 非 ASCII テキストまたは ASCII 以外の区切り記号。 たとえば、コード ページ 932 でのみ、 _ismbbkprint カタカナ英数字またはカタカナ句読点をテストします (範囲: 0xA1 - 0xDF)
_ismbbkpunct ASCII 以外の区切り記号。 たとえば、コード ページ 932 でのみ、 _ismbbkpunct カタカナ句読点のテスト
_ismbblead マルチバイト文字の最初のバイト。 たとえば、コード ページ 932 でのみ、有効な範囲は 0x81 - 0x9F、0xE0 - 0xFC
_ismbbprint isprint(c) || _ismbbkprint(c). ismbbprint には、空白文字 (0x20) が含まれます
_ismbbpunct ispunct(c) || _ismbbkpunct(c).
_ismbbtrail マルチバイト文字の 2 番目のバイト。 たとえば、コード ページ 932 でのみ、有効な範囲は 0x40 - 0x7E、0x80 - 0xEC

次の表に、これらのルーチンの |テスト条件を構成する -combined 値を示します。 マニフェスト定数 _BLANK、、 _DIGIT_LOWER_PUNCT、および _UPPERctype.h定義されています。

ルーチンによって返される値 _BLANK _DIGIT LOWER _PUNCT UPPER ASCII 以外
text
ASCII 以外
句読点
_ismbbalnum x x x x
_ismbbalpha x x x
_ismbbblank x
_ismbbgraph x x x x x x
_ismbbkalnum x
_ismbbkprint x x
_ismbbkpunct x
_ismbbprint x x x x x x x
_ismbbpunct x x

_ismbb ルーチンは、関数とマクロの両方として実装されます。 いずれかの実装を選択する方法の詳細については、関数とマクロの選択に関するおすすめを参照してください

関連項目

バイト分類
isisw ルーチン
_mbbtombc, _mbbtombc_l
_mbctombb, _mbctombb_l