_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
時,例如 一律會傳回 false 的_ismbblead
例程。_MB_CP_UTF8
使用UTF-8。 當代碼頁設定為_MB_CP_UTF8
時,例如 一律會傳回 false 的_ismbblead
例程。任何其他有效的代碼頁值,不論此值是否為 ANSI、OEM 或其他作業系統支援的代碼頁(UTF-7 除外,不支援)。
根據預設,此函式的全域狀態會限定於應用程式。 若要變更此行為,請參閱 CRT 中的全域狀態。
需求
常式 | 必要的標頭 |
---|---|
_setmbcp |
<mbctype.h> |
如需相容性詳細資訊,請參閱相容性。