_mbsbtype、_mbsbtype_l

返回字节的类型在字符串中。

重要

此 API 不能用于在 Windows 运行时中执行的应用程序。有关详细信息,请参见 CRT functions not supported with /ZW(CRT 函数不支持使用/ZW)。

int _mbsbtype(
   const unsigned char *mbstr,
   size_t count 
);
int _mbsbtype_l(
   const unsigned char *mbstr,
   size_t count,
   _locale_t locale 
);

参数

  • mbstr
    多字节字符序列的地址。

  • count
    从字符串的开头的偏移量。

  • locale
    要使用的区域设置。

返回值

_mbsbtype 和 _mbsbtype_l返回在指定的字节指示测试结果的整数值。 清单常数在下表中 Mbctype.h 定义。

返回值

字节类型

_MBC_SINGLE (0)

单字节字符。 例如,在代码页 932,_mbsbtype 返回 0;如果指定的字节在范围内 0x20 – 0x7E 或 0xA1 – 0xDF。

_MBC_LEAD (1)

多字节字符中的前导字节。 例如,在代码页 932,_mbsbtype 返回 1;如果指定的字节范围在 0x81 中– 0x9F 或 0xE0 – 0xFC。

_MBC_TRAIL (2)

多字节字符的尾随字节。 例如,在代码页 932,_mbsbtype 返回 2;如果指定的字节在范围内0x40 – 0x7E或0x80 – 0xFC.

_MBC_ILLEGAL (–1)

NULL 字符串、无效字符或者在mbstr中的count偏移字节之前找到的NULL字节。

备注

_mbsbtype 函数确定在多字节字符串中的字节类型。 函数只检查该字节在 mbstr的偏移量 count,忽略在指定字节之前的无效字符。

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

如果输入字符为NULL,则将调用无效参数处理程序,如参数验证所述。 如果允许执行继续,errno设置为EINVAL,并且函数返回_MBC_ILLEGAL。

要求

例程

必需的标头

可选标头

_mbsbtype

<mbstring.h>

<mbctype.h>*

_mbsbtype_l

<mbstring.h>

<mbctype.h>*

*要使用的清单常数返回值。

有关兼容性的更多信息,请参见兼容性

.NET Framework 等效项

不适用,就请参见 System::Globalization::CultureInfo

请参见

参考

字节分类