在Japan Industry Standard (JIS) 和Japan Microsoft (JMS) 字符之间转换。
重要
此 API 不能用于在 Windows 运行时中执行的应用程序。有关详细信息,请参见 CRT functions not supported with /ZW(CRT 函数不支持使用/ZW)。
unsigned int _mbcjistojms(
unsigned int c
);
unsigned int _mbcjistojms_l(
unsigned int c,
_locale_t locale
);
unsigned int _mbcjmstojis(
unsigned int c
);
unsigned int _mbcjmstojis_l(
unsigned int c,
_locale_t locale
);
参数
c
要转换的字符。local
要使用的区域设置。
返回值
在日语区域设置中,如果转换是不可能的,这些函数返回一个转换的字符或返回 0。 在是非日语区域设置中,这些函数返回传递的字符。
备注
_mbcjistojms 函数将Japan Industry Standard (JIS) 字符转换为Microsoft Kanji (Shift JIS) 字符。 只有当主管和试用字节范围在 0x21 – 0x7E,字符才转换。 如果主管或试用字节是此范围外,errno 设置为 EILSEQ。 有关此更改和其他错误代码的详细信息,请参阅 errno、_doserrno、_sys_errlist 和 _sys_nerr。
_mbcjmstojis函数将 Shift JIS 字符转换为 JIS 字符。 只有当前导字节范围在 0x81 – 0x9F 或 0xE0 – 0xFC,并且尾字节范围在 0x40 – 0x7E 或 0x80 – 0xFC,字符才转换。 请注意在该范围内某些码位没有字符分配,所以未能转换。
该值 c 应有16位值,它的高 8 位字符表示要转换的前导字节,而低 8 位表示末尾字节。
输出值受区域设置的 LC_CTYPE 类设置影响;有关更多信息,请参见 setlocale。 这些不带 _l 后缀的函数的版本使用为该区域设置相关的行为的当前区域设置;带有 _l 后缀的版本相同,只不过它们使用传递的区域设置参数。 有关详细信息,请参阅区域设置。
在早期版本中,_mbcjistojms 和 _mbcjmstojis 分别调用jistojms 和 jmstojis。 应改用 _mbcjistojms,_mbcjistojms_l,_mbcjmstojis 和 _mbcjmstojis_l 。
要求
例程 |
必需的标头 |
---|---|
_mbcjistojms |
<mbstring.h> |
_mbcjistojms_l |
<mbstring.h> |
_mbcjmstojis |
<mbstring.h> |
_mbcjmstojis_l |
<mbstring.h> |
有关兼容性的更多信息,请参见兼容性。
.NET Framework 等效项
不适用。若要调用标准 C 函数,请使用 PInvoke。有关更多信息,请参见平台调用示例。