_ismbcalnum, _ismbcalnum_l, _ismbcalpha, _ismbcalpha_l, _ismbcdigit, _ismbcdigit_l

检查多字节字符是字母数字字符、alpha 还是数字字符。

重要

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

语法

int _ismbcalnum
(
   unsigned int c
);
int _ismbcalnum_l
(
   unsigned int c,
   _locale_t locale
);
int _ismbcalpha
(
   unsigned int c
);
int _ismbcalpha_l
(
   unsigned int c,
   _locale_t locale
);
int _ismbcdigit
(
   unsigned int c
);
int _ismbcdigit_l
(
   unsigned int c,
   _locale_t locale
);

参数

c
要测试的字符。

locale
要使用的区域设置。

返回值

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

备注

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

这些带有 _l 后缀的函数的版本相同,只不过它们使用传递区域设置而不是其与区域设置相关的行为的当前区域设置。 有关详细信息,请参阅 Locale

例程 测试条件 代码页 932 示例
_ismbcalnum_ismbcalnum_l 字母数字 当且仅当 c 是 ASCII 英文字母的单字节表示形式时返回非零值:请参见 _ismbcdigit_ismbcalpha 的示例。
_ismbcalpha_ismbcalpha_l 字母顺序 当且仅当出现以下情况时返回非零值:c 是 ASCII 英文字母的单字节表示形式:0x41<=c<=0x5A or 0x61<=c<=0x7A;或是片假名字母的单字节表示形式:0xA6<=c<=0xDF。
_ismbcdigit_ismbcdigit_l Digit 当且仅当 c 是 ASCII 数字 0x30<=c<=0x39 的单字节表示形式时返回非零值。

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

要求

例程 必需的标头
_ismbcalnum_ismbcalnum_l <mbstring.h>
_ismbcalpha_ismbcalpha_l <mbstring.h>
_ismbcdigit_ismbcdigit_l <mbstring.h>

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

另请参阅

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