_ismbslead、_ismbstrail、_ismbslead_l、_ismbstrail_l

マルチバイト文字列の先行バイトと後続バイトを調べて、指定された部分文字列へのポインターが先行バイトまたは後続バイトを指すかどうかを判定します。

int _ismbslead(
   const unsigned char *str,
   const unsigned char *current 
);
int _ismbstrail(
   const unsigned char *str,
   const unsigned char *current 
);
int _ismbslead_l(
   const unsigned char *str,
   const unsigned char *current,
   _locale_t locale
);
int _ismbstrail_l(
   const unsigned char *str,
   const unsigned char *current,
   _locale_t locale
);

パラメーター

  • str
    文字列の先頭または既にわかっている先行バイトへのポインター。

  • current
    調べる文字列の位置へのポインター。

  • locale
    使用するロケール。

戻り値

_ismbslead は文字が先行バイトの場合に –1 を返し、_ismbstrail は文字が後続バイトの場合に –1 を返します。 入力文字列が有効な文字列で、先行バイトでも後続バイトでもない場合、これらの関数は 0 を返します。 どちらの引数も NULL の場合は、「パラメーターの検証」に説明されているように、無効なパラメーター ハンドラーが呼び出されます。 実行の継続が許可された場合、これらの関数は NULL を返し、errno を EINVAL に設定します。

解説

_ismbslead と _ismbstrail は文字列のコンテキストを考慮するので、_ismbblead と _ismbbtrail のバージョンより低速です。

_l サフィックスが付いているこれらの関数のバージョンは、現在のロケールの代わりに渡されたロケールを使用してロケールに依存する動作を行う点を除いて同じです。 詳細については、「ロケール」を参照してください。

必要条件

ルーチン

必須ヘッダー

オプション ヘッダー

_ismbslead

<mbctype.h> または <mbstring.h>

<ctype.h>、* <limits.h>、<stdlib.h>

_ismbstrail

<mbctype.h> または <mbstring.h>

<ctype.h>、* <limits.h>、<stdlib.h>

_ismbslead_l

<mbctype.h> または <mbstring.h>

<ctype.h>、* <limits.h>、<stdlib.h>

_ismbstrail_l

<mbctype.h> または <mbstring.h>

<ctype.h>、* <limits.h>、<stdlib.h>

* テスト条件用の記号定数の場合

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

同等の .NET Framework 関数

該当なし標準 C 関数を呼び出すには、PInvoke を使用します。詳細については、「プラットフォーム呼び出しの例」を参照してください。

参照

参照

文字分類

_ismbc 系ルーチン

is、isw 系ルーチン

_ismbb 系ルーチン