_setmbcp
设置新的多字节代码页。
语法
int _setmbcp(
int codepage
);
参数
codepage
独立于区域设置的多字节例程的新代码页设置。
返回值
如果已成功设置代码页,则返回 0。 如果为 codepage
提供的代码页值无效,则返回 -1 且代码页设置保持不变。 如果无法分配内存,则将 errno
设置为 EINVAL
。
备注
_setmbcp
函数指定新的多字节代码页。 默认情况下,运行时系统将多字节代码页自动设置为系统默认的 ANSI 代码页。 多字节代码页设置将影响所有独立于区域设置的多字节例程。 但是,可能会指示 _setmbcp
使用为当前区域设置定义的代码页(请参阅以下清单常量和关联的行为结果的列表)。 有关依赖于区域设置代码页,而不是多字节代码页的多字节例程的列表,请参阅多字节字符序列解释。
可以将 codepage
自变量设置为以下值之一:
_MB_CP_ANSI
使用在程序启动时从操作系统获取的 ANSI 代码页。_MB_CP_LOCALE
使用从以前对setlocale
的调用获取的当前区域设置的代码页。_MB_CP_OEM
使用在程序启动时从操作系统获取的 OEM 代码页。_MB_CP_SBCS
使用单字节代码页。 在将代码页设置为_MB_CP_SBCS
时,如_ismbblead
的例程始终返回 false。_MB_CP_UTF8
使用 UTF-8。 在将代码页设置为_MB_CP_UTF8
时,如_ismbblead
的例程始终返回 false。任何其他有效的代码页值,而不考虑该值是否为 ANSI、OEM 或其他操作系统支持的代码页(除不受支持的 UTF-7 以外)。
默认情况下,此函数的全局状态范围限定为应用程序。 若要更改此行为,请参阅 CRT 中的全局状态。
要求
例程 | 必需的标头 |
---|---|
_setmbcp |
<mbctype.h> |
有关兼容性的详细信息,请参阅 兼容性。
另请参阅
_getmbcp
%>