コンソールへの wchar_t 値の出力
std::cout を使用して wchar_t 値を出力しようとすると、16 進アドレスのみが表示されるインスタンスが発生する場合があります。意図した文字の代わりに。この異常は、ワイド文字を表す wchar_t とナロー文字を処理するように設計された std::cout の間の不一致が原因で発生します。
この問題を修正するには、問題の回答では代わりに std::wcout を利用することを提案しています。 .
解決策
以下のコード スニペットstd::wcout を使用して wchar_t 文字列を正しく出力する方法を示します。
#include <iostream> using namespace std; int main() { wchar_t en[] = L"Hello"; wchar_t ru[] = L"Привет"; //Russian language wcout << ru << endl << en; return 0; }
std::wcout を利用することにより、wchar_t 配列内のワイド文字が正しく解釈されてコンソールに出力され、次の問題が解決されます。 16 進アドレス。このアプローチにより、さまざまな言語で発生するような、標準の狭い文字範囲外の文字を適切に表示できます。
以上が「wchar_t」値をコンソールに出力すると、文字ではなく 16 進数のアドレスが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。