2021年08月24日

VScode PowerShell C++ で文字化けで四苦八苦して楽しくて苦しくて どっちなんじゃあ

某出版社からc++の例題複数をdownloadしてですね、展開したFolderに。そのFolderをVScodeで開いてファイル選択してエディター画面で右クリックして、Run Codeクリック。
敬虔なクリック教徒のワタクシはそれで動作見て、あ、動いた!!  で終わる。

だが、本日、出力の文字化けが出た。これがな、よーわからん。出ないものもある。
ソースは元はshift-jisだがutf-8に変えた。その場合に、PowerShellだとBOM付きでないと文字化けするとかいう話があった。だが、BOM付きにしても文字化け。しないでも文字化け。
Terminalで手動で試しても文字化け。その場合には chcp 932, chcp 65001で切り替えて試しても文字バケ。

しかーーし、cmd.comにするとファイルがutf-8, Terminalが 65001であれば文字化けしない。Terminalが 932のときは文字化けする。これは分かる。

どうもPowerShellの場合に何がなにかやら。。。。に加えて、実は同じソースファイルを別のFolderにコピペしてそのFolderで試すと文字化けしない。右クリックで正常動作する。

どないなってんのじゃあ!! 

ワケワカラン。

   いろいろ試して分けわからんが、VScodeのTerminalとWin 10のコマンド・ウィンドウとは全く同じというわけではないのか?   知らんけど。
今日は、放棄。

   酒のんでエネルギー補充したので最下位する。
VScodeとは別にPowerShell Command Windowでもやってみた。
cout << “こにちわ! “  とか、printf(“こんちはあぁ!”) とかでtest。test.cppとでもしよう、utf-8 で保存した。
PS5    g++ test.c  ----- その後に ./test で実行して、chcp 65001だと文字化けなし。932だと文字化け。これは納得。
PS7    同じようにして、chcp 65001, 932ともに文字化け。。。

VScodeのターミナルで同じようにやってみた。
って感じでやっていた、ワケワカラン。うまくいく場合とダメな場合がある。Folderに依って違うのか・・・となるとVScodeの設定の何かが違うのか、それはなんじゃらほーーーい。

ワケワカランが、もう放棄する。cmd.com使えばいいし(笑)

posted by toinohni at 10:46| 東京 ☁| Comment(0) | ソフト系雑学 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
コチラをクリックしてください