ホームページ >バックエンド開発 >C++ >C で Unicode 文字を確実に出力するにはどうすればよいですか?

C で Unicode 文字を確実に出力するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-13 10:51:12167ブラウズ

How Can I Reliably Print Unicode Characters in C  ?

C での Unicode 文字の印刷

ロシア語の文字 "ф" (U 0444) を印刷しようとすると、ユーザーはwchar_t データ型。ただし、C で Unicode 文字を表現して出力する別の方法もあります。

Unicode 文字の表現:

  • ユニバーサル文字名 (UCN) を使用する は、「u」または「U」の後に Unicode 16 進値が続く形式で指定します。例: 'u0444'.
  • ソース コードのエンコーディングがリテラル文字をサポートしている場合は、リテラル文字を使用します (例: 'ф')。

Unicode 文字の印刷:

  • 端末エミュレータとコンパイラがその文字をサポートする互換性のあるエンコーディングを使用している場合は、次を使用して直接出力します。 cout で十分です。
  • Windows の場合、wcout を使用して UTF-16 出力の出力ファイル ハンドル モードを _O_U16TEXT に設定します。

移植可能なコードに関する考慮事項:

Unicode 印刷用の移植可能なコードの実装はより複雑です。 UCN は文字エンコーディング間で移植可能であるため、使用することを検討してください。

コード例:

#include <iostream>

int main() {
    std::cout << "Hello, " << '\u0444' << "!\n";
}

このコードは、「Hello, ф!」を出力します。ソースコードやコンソールエンコーディングに関係なく。

以上がC で Unicode 文字を確実に出力するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。