• ベストアンサー

MinGW + MSYSで文字化け

Windows Vistaを使ってます。 C言語でprintfで「あ」と表示するプログラムを作ったのですが、実行すると「縺」と表示されます。 ソースはutf-8で書きました。 どのようにすれば文字化けせずに表示できるのでしょうか?

  • gjmpt
  • お礼率21% (15/71)

質問者が選んだベストアンサー

  • ベストアンサー
  • tatsu99
  • ベストアンサー率52% (391/751)
回答No.2

ソースをシフトJISで書けばよいと思います。

その他の回答 (2)

  • php504
  • ベストアンサー率42% (926/2160)
回答No.3

コマンドプロンプトの文字コードならchcpで変更できます chcp 65001 でUTF-8になります

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.1

出力する場に合った適切な文字コードを使う.

関連するQ&A

  • 文字化けを治す方法ありますか?

    いつも大変お世話になりありがとうございます。 C言語・インタープリターを実行した時に文字化けします。 改善策をアドバイス願います。 ご多忙中恐れ入ります。 ご回答の程、宜しくお願い申し上げます。 コード /*画面に文字を出力するコード*/ #include <stdio.h> int main(void) { printf("ようこそC言語へ!\n"); printf("C言語をはじめましょう!\n"); return 0; } コンパイルと実行時の文字化け。 C:\MinGW>gcc Sample1.c -o Sample1 C:\MinGW>Sample1 繧医≧縺薙◎C險€隱槭∈・・ C險€隱槭r縺ッ縺倥a縺セ縺励g縺・シ・

  • Ruby 文字化け対策

    プログラミングの初心者です。 質問させていただきたいのですが、下のようにrssを処理するプログラムを実行して結果を示していますが、文字化けになってしまっています。プログラムをどう変えたらこういった文字化けが直りますか? エディタの文字コード指定(utf8、JIS等に)を何回か変えてみても同じような実行になります。 稚拙な質問ですみませんが、ご存知な方教えて下さい。 宜しくお願い致します。 実行結果(一部抜粋) DisplayLink遉セ縺ョ繝√ャ繝励・荵励▲縺溘€ゞSB/豸イ譎カ螟画鋤蝓コ譚ソ縲6SB繝薙ョ繧ェ繝懊・繝峨°<br /> 縺薙l縺ッ繝阪ず豁「繧√□縺」縺・br /> <a href="http://www.flick.com

  • VisualStudioの文字コードについて

    現在、WindowsとLinux(Unix)でソケット通信を行い、文字のやり取りをするプログラムを作成しています。 ソースコードやコンパイルの環境は、 Windows側(Windows7):C言語(Windowsプログラミング)、VisualStudio2013でビルド&実行 Linux側:C++、g++(Cygwinを使用) です。 Windows側のソースコードがShift-JIS、Linux側がUTF-8であり、このままだと文字化けしてしまうため、Windows側のソースコードをUTF-8に変更(VisualStudioでソースコードを保存するときに「エンコード付きで保存」を使用)して再度ビルド、実行を行ったのですが、やはり文字化けしてしまいます。 ソースコードの文字コードを変更しただけでは不十分なのでしょうか? 原因があまりよく分からず困っています。 もし何か分かることがあれば教えていただきたいです、よろしくお願いします。 (もしかしたらカテゴリ違いかもしれません、申し訳ありません)

  • プログラムを実行すると文字化けする。

    Windws98の頃に、VisualBasicで作成したプログラムを、Windows XP Professionalの、コマンドプロンプトで実行すると問題なく実行するのですが、Windows Server 2008 Standardの、コマンドプロンプトで実行すると、コマンドプロンプトの画面で漢字が文字化けしてしまいます。例えば、そのプログラムを、C:\プログラムというフォルダにおいて実行すると、コマンドプロンプトの表示が、C:\??????????>という表示なります。フォルダ名を漢字にしないと、文字化けはするのですが、プログラムは実行されます。何か設定で解決することは出来るのでしょうか。それとも、プログラムを作成し直した方が良いのでしょうか。

  • 文字化け

    C言語初心者です。 #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { printf("表示"); system("PAUSE"); return 0; } と書いてコンパイルしたのですが「表示」のところが文字化けしてしまいます。 他にも文字化けするかもしれないので、 解決法を教えて下さい。 使っているコンパイラは、Bloodshed Dev-C++です。

  • PHPの文字化けについて教えてください。

    文字を表示しようとすると、 縺ョ螂ウ蟄 このような文字化けが起こるので $a =mb_convert_variables('utf-8' , 'sjis' , $item[0]); echo $a こうしてエンコードしたのですが、結果をみると SJIS とだけしか表示されません。どこか間違えているのでしょうか? CSSも使っているのですが、そちらも何か関係しているのでしょうか?

    • 締切済み
    • PHP
  • メールの文字化け

    富士通のノートPC(VISTA)を使っています。 メールのやり取りをしている人(以降Aさん)がPCを代替えしてから、 Aさんから来るメールが文字化けします。 「いつも有難うございます。」が以下のように文字化けしています。 「縺・▽繧よ怏髮」縺・#縺悶>縺セ縺吶€�」 私がAさんに送ったメールに対してAさんが返信したメールは文字化けしません。 つまり、Aさんが新規作成したメールが私の方で文字化けします。 この文字化けメールに対して私が履歴付返信をする際、履歴部部には「いつも有難うございます。」と正しく表示されます。 私が使っているメールソフトは富士通の「@メール」で、試しに「OUTLOOK」を使ったら、文字化けはありませんでした。 繰り返しますが、文字化けはAさんがPCを代替えしてからです。 何を確認・対処すれば治るのでしょうか?

  • 文字化け

    Windows7にxampp1.7.3をいれています。MySQLはSever version 5.1.41です。 my.iniは[mysqld][mysqldump][mysql]に default-character-set = utf8 を追加しました。 UTF-8でテーブルの作成(create文)とレコードの追加(insert文)を書いたテキストファイルを作り、 windowsのコマンドプロンプトから mysql -u root -p (パスワード) で入り、 source (上のテキストファイル); で読み込ませ実行し、phpでそのデータベースに接続して使おうとしました。 しかし、特定の文字だけ化ける現象が表れます。 上のsource (上のテキストファイル);を実行したときも、 1 row affected (0.00 sec)という中にいくつか(たぶん文字化けのところに) 1 warning (0.00 sec)が表れました。 化けた文字は「店」「局」「展」「 (全角スペース)」「く」などです。 それ以外の文字はPHPを使って見たときは正常に表示されます。 (もちろんコマンドプロンプトでselect文でテーブル表示したときなど 全部文字化けしますが) 自分では 店(E5BA97)、局(E5B180)、展(E5B195)、全角スペース(E38080)、く(E3818F)、から UTF-8で「E5B」「E38」から始まる文字が化けるように思っています。 そもそもsourceを使ってレコードを挿入する時に問題があると考えているのですが、 どのようにしたら解決するのでしょうか?

  • ie9文字化け

    Windows7で、IE9が更新プログラムの影響(らしい)でYouTubeなど一部のサイトで文字化けしています。 表示ーエンコードーその他ーUnicode(UTF-8)とすると一時的には正常に表示されますが、動画を選択しダブルクリックして表示させるとまた文字化けします。 何とかならないでしょうか?。 ご教示よろしくお願いします。

  • ウィンドウが文字化けしてしまいます

    ウィンドウの文字が、変な言語に文字化けしてしまいます。 [閉じる]ボタンなどが文字化けしてしまったり、ブラウザーのエンコード設定で文字化けしてしまうのではなく、 アプリケーションのウィンドウ内の文字そのものが文字化けしてしまうのです。 普通の言語で表示させるには、どうすればよいでしょうか。

専門家に質問してみよう