_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
1 バイト コード ページを使用します。 コード ページが_MB_CP_SBCS
に設定されている場合、_ismbblead
などのルーチンは常に false を返します。_MB_CP_UTF8
UTF-8 を使用します。 コード ページが_MB_CP_UTF8
に設定されている場合、_ismbblead
などのルーチンは常に false を返します。値が ANSI、OEM、またはその他のオペレーティング システムでサポートされているコード ページ (サポートされていない UTF-7 を除く) のいずれであるかに関係なく、その他の有効なコード ページ値。
既定では、この関数のグローバル状態の適用対象は、アプリケーションになります。 この動作を変更するには、「CRT でのグローバル状態」を参照してください。
要件
ルーチンによって返される値 | 必須ヘッダー |
---|---|
_setmbcp |
<mbctype.h> |
互換性の詳細については、「 Compatibility」を参照してください。