_ismbc 系ルーチン
更新 : 2007 年 11 月
_ismbc 系の各ルーチンは、c に指定されたマルチバイト文字が所定の条件を満たしているかどうかを調べます。
_ismbcalnum、_ismbcalnum_l、_ismbcalpha、_ismbcalpha_、_ismbcdigit、_ismbcdigit_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 以外の値を返します。 |
グラフィック |
c が空白 ( ) を除く印字可能な 1 バイト ASCII または半角カタカナ文字の場合にだけ、0 以外の値を返します。_ismbcdigit、_ismbcalpha、および _ismbcpunct の例を参照してください。 |
|
有効なマルチバイト文字 |
c の最初のバイトが 0x81 ~ 0x9F または 0xE0 ~ 0xFC の範囲にあり、2 番目のバイトが 0x40 ~ 0x7E または 0x80 ~ 0xFC の範囲にある場合にだけ、0 以外の値を返します。 |
|
英小文字 |
c が 1 バイト ASCII 英小文字 (0x61<=c<=0x7A) の場合にだけ、0 以外の値を返します。 |
|
印字可能な文字 |
c が空白 ( ) を含む印字可能な 1 バイト ASCII または半角カタカナ文字の場合にだけ、0 以外の値を返します。_ismbcspace、_ismbcdigit、_ismbcalpha、および _ismbcpunct の例を参照してください。 |
|
区切り記号 |
c が 1 バイト ASCII または半角カタカナ区切り文字の場合にだけ、0 以外の値を返します。 |
|
空白 |
c が空白文字 (c=0x20 または 0x09<=c<=0x0D) の場合にだけ、0 以外の値を返します。 |
|
マルチバイト シンボル |
c が 0x8141<=c<=0x81AC の範囲にある場合にだけ、0 以外の値を返します。 |
|
英大文字 |
c が 1 バイト ASCII 英大文字 (0x41<=c<=0x5A) の場合にだけ、0 以外の値を返します。 |
コード ページ 932 に固有
コード ページ 932 に固有のルーチンを次に示します。
ルーチン |
テスト条件 (コードページ 932 のみ) |
---|---|
ダブル バイトのひらがな (0x829F<=c<=0x82F1) |
|
ダブル バイトのカタカナ (0x8340<=c<=0x8396) |
|
JIS 非漢字 (0x8140<=c<=0x889E) |
|
JIS 第一水準 (0x889F<=c<=0x9872) |
|
JIS 第二水準 (0x989F<=c<=0xEA9E) |
_ismbcl0、_ismbcl1、および _ismbcl2 は、c に指定された値が上記の表に示すテスト条件に合っているかどうかを調べますが、c が有効なマルチバイト文字かどうかは調べません。下位バイトが 0x00 ~ 0x3F、0x7F、または 0xFD ~ 0xFF の範囲にある場合、これらの関数は 0 以外の値を返し、その文字がテスト条件を満たすことを示します。マルチバイト文字が定義されているかどうかを調べるには、_ismbbtrail、_ismbbtrail_l を使用します。
コード ページ 932 の固有情報終了