値対、私のような、\uXXXX
エスケープシーケンスを使用してきた:16進数はうまく動作するはず使用して、しかしUnicodeエスケープシーケンス進は私のプログラムでのUnicode/UTF-8文字をエンコードするには
wchar_t superscript_4 = L'\u2074'; // U+2074 SUPERSCRIPT 4 '⁴'
wchar_t subscript_4 = L'\u2084'; // U+2084 SUBSCRIPT 4 '₄'
Unicodeは16進数でエンコードされているためです。
wchar_t superscript_4 = 0x2074;
wchar_t subscript_4 = 0x2084;
2番目の例では文字が正しくエンコードされますか?ワイド文字問題、セグメンテーションフォールト、誤って格納された文字値に遭遇しますか?もしそうなら、なぜですか?そうでない場合、なぜですか?
最初の例では、私が知る限り、文字リテラルをCHAR_MAXより大きい値で定義しています。それ自体が悪いです... – rubenvb
''\ u2074'の代わりに' L '\ u2074''を試しましたか? –
@rubenvb whoops、typoがありました。固定(Keineのコメントごと)。 –