CPINFOEXA 構造体 (winnls.h)
コード ページに関する情報が含まれています。 この構造体は、GetCPInfoEx 関数によって使用されます。
構文
typedef struct _cpinfoexA {
UINT MaxCharSize;
BYTE DefaultChar[MAX_DEFAULTCHAR];
BYTE LeadByte[MAX_LEADBYTES];
WCHAR UnicodeDefaultChar;
UINT CodePage;
CHAR CodePageName[MAX_PATH];
} CPINFOEXA, *LPCPINFOEXA;
メンバーズ
MaxCharSize
コード ページ内の文字の最大長 (バイト単位)。 長さは、1 バイト文字セット (SBCS) の場合は 1、2 バイト文字セット (DBCS) の場合は 2、他の文字セット型の場合は 2 より大きい値にすることができます。 この関数では、ISCII または ISO-2022-xx コード・ページの使用など、他の要因により、SBCS または DBCS を他の文字セットと区別するためにサイズを使用できません。
DefaultChar[MAX_DEFAULTCHAR]
文字列を特定のコード ページに変換するときに使用される既定の文字。 この文字は、明示的な既定の文字が指定されていない場合、WideCharToMultiByte 関数によって使用されます。 通常、既定値はコード ページの "?" 文字です。
LeadByte[MAX_LEADBYTES]
リード バイト範囲の数が可変である、リード バイト範囲の固定長配列。 コード ページにリード バイトがない場合、配列のすべての要素は null
UnicodeDefaultChar
特定のコード ページからの翻訳で使用される Unicode の既定の文字。 既定値は通常、"?" 文字またはカタカナの中央のドット文字です。 Unicode の既定の文字は、multiByteToWideChar 関数
CodePage
コード ページの値。 この値は、GetCPInfoEx 関数に渡されたコード ページを反映します。 ANSI およびその他のコード ページの一覧については、「コード ページ識別子」を参照してください。
CodePageName[MAX_PATH]
コード ページの完全な名前。 この名前はローカライズされており、オペレーティング システムのバージョンまたはコンピューター間の一意性や一貫性が保証されないことに注意してください。
備考
リード バイトは、256 文字を超える DBCS コード ページに固有です。 先頭バイトは、DBCS 内の 2 バイト文字の最初のバイトです。 各 DBCS コード・ページでは、リード・バイトはバイト値の特定の範囲を占有します。 この範囲は、コード ページごとに異なります。
リード バイト情報は、ほとんどのコード ページではあまり役に立ちません。また、UTF-8 や GB18030 など、多くのマルチバイト エンコードに対しても提供されません。 アプリケーションでは、この情報を使用して、
手記
winnls.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして CPINFOEX を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリ |UWP アプリ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリ |UWP アプリ] |
ヘッダー | winnls.h (Windows.h を含む) |
関連項目
GetCPInfoEx の
wideCharToMultiByte を