提示コードですがなぜWriteConsoleOutput();関数で文字化けするのでしょうか?英語は文字化けしないのですが日本語は文字化けしてします。
WindowConsole変数の型はCHAR_INFO型です。どうすればいいのでしょうか? 色々実験しましたがどうしても表示されません。
※Visual Studio なのでマルチバイト文字を利用に設定を変更しましたが変わりません。
cpp
1 2// ------------------------------------------------------------------- 3void Main_Screen::GenerateOutput() 4{ 5 //WindowConsole[0].Char.AsciiChar = (char)"あ"; 6 //WindowConsole[0].Char.UnicodeChar = (char)"あ"; 7 8 //WindowConsole[0].Char.AsciiChar = (char)'あ'; 9 //WindowConsole[0].Char.UnicodeChar = (char)'あ'; 10 11 //WindowConsole[0].Char.UnicodeChar = (WCHAR)"あ"; 12 //WindowConsole[0].Char.UnicodeChar = (WCHAR)'あ'; 13 14 //WindowConsole[0].Char.UnicodeChar = (WCHAR)"A"; 15 //WindowConsole[0].Char.UnicodeChar = (WCHAR)"a"; 16 17 18 WindowConsole[0].Attributes = (DWORD)(100 * 100 * 100); 19 20 21 WriteConsoleOutput(hScreen, WindowConsole, coord_size, coord_start, &Rect); //現在のカーソル位置から始まる文字列をコンソール画面バッファーに書き込み 22 //FlushConsoleInputBuffer(hScreen); //コンソールの入力バッファーをフラッシュする 23} 24
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。