GCC コンパイラはコンパイラ オプション (-fexec-charset=option) を提供するため、文字および文字列リテラルのエンコーディングを構成できるため、文字列をソース文字セット (デフォルトでは UTF-8) から実行文字セットに変換できます。
ソース文字セットから実行文字セットへのこの変換によって、エスケープ シーケンスが対応するコード ポイントに置き換えられるのでしょうか。
例。
cout << "hello \x60 "; // \x60 replaced by byte 0x60
cout << "hello \n"; // \n replaced by 0xA0
また、最初の例では、この文字\x60
はエンコードに依存しませんが、2 番目の例では、この文字 '\n' バイト表現はエンコードに依存し、プラットフォームにも依存します (Windows では \r\n に変更され、Windows では \n のままです)。 UNIX)。