_mbbtype、_mbbtype_l

直前のバイトに基づいて、バイトの種類を返します。

int _mbbtype(
   unsigned char c,
   int type 
);
int _mbbtype_l(
   unsigned char c,
   int type,
   _locale_t locale
);

パラメーター

  • c
    テストする文字。

  • type
    テストするバイトの種類。

  • locale
    使用するロケール。

戻り値

_mbbtype は、文字列内のバイトの種類を返します。 判定は、テスト条件を制御する type の値で指定された文脈に依存します。 type は、文字列内の直前のバイトの種類です。 次の表の記号定数 (manifest 定数) は、Mbctype.h で定義されています。

typeの値

_mbbtype のテスト項目

戻り値

c

1 以外の値

有効な 1 バイトまたは先行バイト

_MBC_SINGLE (0)

1 バイト (0x20 ~ 0x7E、0xA1 ~ 0xDF)

1 以外の値

有効な 1 バイトまたは先行バイト

_MBC_LEAD (1)

マルチバイト文字の先行バイト (0x81 ~ 0x9F、0xE0 ~ 0xFC)

1 以外の値

有効な 1 バイトまたは先行バイト

_MBC_ILLEGAL 

( –1)

無効な文字 (0x20 ~ 0x7E、0xA1 ~ 0xDF、0x81 ~ 0x9F、0xE0 ~ 0xFC 以外の値)

1

有効な後続バイト

_MBC_TRAIL (2)

マルチバイト文字の後続バイト (0x40 ~ 0x7E、0x80 ~ 0xFC)

1

有効な後続バイト

_MBC_ILLEGAL 

( –1)

無効な文字 (0x20 ~ 0x7E、0xA1 ~ 0xDF、0x81 ~ 0x9F、0xE0 ~ 0xFC 以外の値)

解説

_mbbtype 関数は、マルチバイト文字のバイトの種類を判定します。 type に 1 以外の値を指定すると、_mbbtype 関数は、有効な 1 バイトであるか、マルチバイト文字の先行バイトであるかをテストします。 type に 1 を指定すると、_mbbtype 関数は、マルチバイト文字の有効な後続バイトかどうかをテストします。

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

以前のバージョンでは、_mbbtype は chkctype と呼ばれていました。 新しいコードでは、代わりに _mbbtype を使用してください。

必要条件

ルーチン

必須ヘッダー

オプション ヘッダー

_mbbtype

<mbstring.h>

<mbctype.h>*

_mbbtype_l

<mbstring.h>

<mbctype.h>*

* 戻り値として使用される記号定数 (manifest 定数) を定義する場合。

互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。

同等の .NET Framework 関数

該当なし。ただし、「System::Globalization::CultureInfo」を参照してください。

参照

参照

バイト分類