_ismbc 系ルーチン

更新 : 2007 年 11 月

_ismbc 系の各ルーチンは、c に指定されたマルチバイト文字が所定の条件を満たしているかどうかを調べます。

_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_、_ismbcdigit、_ismbcdigit_l

_ismbcl0、_ismbcl0_l、_ismbcl1、_ismbcl1_l、_ismbcl2、_ismbcl2_l

_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcspace、_ismbcspace_l

_ismbclegal、_ismbclegal_l、_ismbcsymbol、_ismbcsymbol_l

_ismbchira、_ismbchira_l、_ismbckata、_ismbckata_l

_ismbclower、_ismbclower_l、_ismbcupper、_ismbcupper_l

解説

_ismbc 系の各ルーチンのテスト結果は、使用中のマルチバイト コード ページによって異なります。マルチバイト コード ページには、1 バイトの英文字があります。既定では、マルチバイト コード ページは、プログラムの起動時にオペレーティング システムから取得されたシステム既定の ANSI コード ページに設定されます。マルチバイト コード ページの問い合わせは _getmbcp で、変更は _setmbcp で行うことができます。

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

ルーチン

テスト条件

コード ページ 932 の例

_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_、_ismbcdigit、_ismbcdigit_l

英数字

c が 1 バイト ASCII 英数字の場合にだけ、0 以外の値を返します。_ismbcdigit および _ismbcalpha の例を参照してください。

_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_、_ismbcdigit、_ismbcdigit_l

英字

c が 1 バイト ASCII 英字の場合にだけ、0 以外の値を返します。_ismbcupper および _ismbclower、または半角カタカナ文字 (0xA6<=c<=0xDF) の例を参照してください。

_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_、_ismbcdigit、_ismbcdigit_l

数字

c が 1 バイト ASCII 数字 (0x30<=c<=0x39) の場合にだけ、0 以外の値を返します。

_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcspace、_ismbcspace_l

グラフィック

c が空白 ( ) を除く印字可能な 1 バイト ASCII または半角カタカナ文字の場合にだけ、0 以外の値を返します。_ismbcdigit_ismbcalpha、および _ismbcpunct の例を参照してください。

_ismbclegal、_ismbclegal_l、_ismbcsymbol、_ismbcsymbol_l

有効なマルチバイト文字

c の最初のバイトが 0x81 ~ 0x9F または 0xE0 ~ 0xFC の範囲にあり、2 番目のバイトが 0x40 ~ 0x7E または 0x80 ~ 0xFC の範囲にある場合にだけ、0 以外の値を返します。

_ismbclower、_ismbclower_l、_ismbcupper、_ismbcupper_l

英小文字

c が 1 バイト ASCII 英小文字 (0x61<=c<=0x7A) の場合にだけ、0 以外の値を返します。

_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcspace、_ismbcspace_l

印字可能な文字

c が空白 ( ) を含む印字可能な 1 バイト ASCII または半角カタカナ文字の場合にだけ、0 以外の値を返します。_ismbcspace_ismbcdigit_ismbcalpha、および _ismbcpunct の例を参照してください。

_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcspace、_ismbcspace_l

区切り記号

c が 1 バイト ASCII または半角カタカナ区切り文字の場合にだけ、0 以外の値を返します。

_ismbcgraph、_ismbcgraph_l、_ismbcprint、_ismbcprint_l、_ismbcpunct、_ismbcpunct_l、_ismbcspace、_ismbcspace_l

空白

c が空白文字 (c=0x20 または 0x09<=c<=0x0D) の場合にだけ、0 以外の値を返します。

_ismbclegal、_ismbclegal_l、_ismbcsymbol、_ismbcsymbol_l

マルチバイト シンボル

c が 0x8141<=c<=0x81AC の範囲にある場合にだけ、0 以外の値を返します。

_ismbclower、_ismbclower_l、_ismbcupper、_ismbcupper_l

英大文字

c が 1 バイト ASCII 英大文字 (0x41<=c<=0x5A) の場合にだけ、0 以外の値を返します。

コード ページ 932 に固有

コード ページ 932 に固有のルーチンを次に示します。

ルーチン

テスト条件 (コードページ 932 のみ)

_ismbchira、_ismbchira_l、_ismbckata、_ismbckata_l

ダブル バイトのひらがな (0x829F<=c<=0x82F1)

_ismbchira、_ismbchira_l、_ismbckata、_ismbckata_l

ダブル バイトのカタカナ (0x8340<=c<=0x8396)

_ismbcl0、_ismbcl0_l、_ismbcl1、_ismbcl1_l、_ismbcl2、_ismbcl2_l

JIS 非漢字 (0x8140<=c<=0x889E)

_ismbcl0、_ismbcl0_l、_ismbcl1、_ismbcl1_l、_ismbcl2、_ismbcl2_l

JIS 第一水準 (0x889F<=c<=0x9872)

_ismbcl0、_ismbcl0_l、_ismbcl1、_ismbcl1_l、_ismbcl2、_ismbcl2_l

JIS 第二水準 (0x989F<=c<=0xEA9E)

_ismbcl0_ismbcl1、および _ismbcl2 は、c に指定された値が上記の表に示すテスト条件に合っているかどうかを調べますが、c が有効なマルチバイト文字かどうかは調べません。下位バイトが 0x00 ~ 0x3F、0x7F、または 0xFD ~ 0xFF の範囲にある場合、これらの関数は 0 以外の値を返し、その文字がテスト条件を満たすことを示します。マルチバイト文字が定義されているかどうかを調べるには、_ismbbtrail、_ismbbtrail_l を使用します。

コード ページ 932 の固有情報終了

参照

参照

文字分類

is、isw 系ルーチン

_ismbb 系ルーチン