mbtowc() によって取得された wchar_t 値が UNICODE 値ではない理由はありますか?

mbtowc() によって取得された wchar_t 値が UNICODE 値ではない理由はありますか?

UTF-8ロケール(2つのオクテット0xC3 0xB6で表される)で文字「ö」を変換すると、値はwchar_tです。これはLinuxとSolarisに適用されます。wchar_t0xF6

ISO-8859-1ロケール(単一オクテット0xF6で表される)の「ö」文字をに変換すると、wchar_tLinuxではwchar_t0xF6、Solarisでは0x30000076の値が得られます。

理由を知って背景を説明できる人はいますか?

注:Solarisのi18nソースコードはSun / Oracle、IBM、およびHPで共有されるため、これはAIXおよびHP-UXにも適用される可能性があります。

ベストアンサー1

おすすめ記事