_ismbcl0, _ismbcl0_l, _ismbcl1, _ismbcl1_l, _ismbcl2, _ismbcl2_l

代码页 932 特定函数,使用当前区域设置或指定的 LC_CTYPE 转换状态类别。

重要

此 API 不能用于在 Windows 运行时中执行的应用程序。 有关详细信息,请参阅通用 Windows 平台应用中不支持的 CRT 函数

语法

int _ismbcl0(
   unsigned int c
);
int _ismbcl0_l(
   unsigned int c,
   _locale_t locale
);
int _ismbcl1(
   unsigned int c
);
int _ismbcl1_l(
   unsigned int c ,
   _locale_t locale
);
int _ismbcl2(
   unsigned int c
);
int _ismbcl2_l(
   unsigned int c,
   _locale_t locale
);

参数

c
要测试的字符。

locale
要使用的区域设置。

返回值

如果字符满足测试条件,则每个例程都会返回非零值。 否则,返回 0。 如果 c<= 255,并且有相应的 _ismbb 例程(例如, _ismbcalnum 对应于 _ismbbalnum),则结果是相应的 _ismbb 例程的返回值。

注解

其中每个函数都针对给定的条件测试给定的多字节字符。

输出值受区域设置的 LC_CTYPE 类别设置的影响。 有关详细信息,请参阅 setlocale。 这些不带 _l 后缀的函数的版本使用为该区域设置相关的行为的当前区域设置;带有 _l 后缀的版本相同,只不过它们使用传递的区域设置参数。 有关详细信息,请参阅 Locale

例程 测试条件(仅代码页 932)
_ismbcl0 JIS 非日本汉字:0x8140<=c<=0x889E。
_ismbcl0_l JIS 非日本汉字:0x8140<=c<=0x889E。
_ismbcl1 JIS 1 级:0x889F<=c<=0x9872。
_ismbcl1_l JIS 1 级:0x889F<=c<=0x9872。
_ismbcl2 JIS 2 级:0x989F<=c<=0xEAA4。
_ismbcl2_l JIS 2 级:0x989F<=c<=0xEAA4。

函数将检查指定值 c 是否匹配上述测试条件,但不会检查 c 是否为有效的多字节字符。 如果低字节位于范围 0x00 - 0x3F、0x7F 或 0xFD - 0xFF 内,这些函数将返回一个非零值,指明字符满足测试条件。 使用 _ismbbtrail 测试是否定义了多字节字符。

END 特定于代码页 932

默认情况下,此函数的全局状态范围限定为应用程序。 若要更改此行为,请参阅 CRT 中的全局状态

要求

例程 必需的标头
_ismbcl0 <mbstring.h>
_ismbcl0_l <mbstring.h>
_ismbcl1 <mbstring.h>
_ismbcl1_l <mbstring.h>
_ismbcl2 <mbstring.h>
_ismbcl2_l <mbstring.h>

有关兼容性的详细信息,请参阅 兼容性

另请参阅

字符分类
_ismbc 例程
is, isw 例程