dポイントプレゼントキャンペーン実施中!

C言語でWindowsAPIプログラムを書き、コンパイルしたら文字化けしてしまいました。色々調べたのですが、記事がありませんでした。治す方法を教えてください。ソースコードや環境は以下のとうりです。

OS: Windows 10

コマンドプロンプトの
  文字コード: utf-8

ソースコードの
    文字コード: utf-8

コンパイラ: MinGWのgcc

ソースファイル名: source.c

ソースコード:

1 : #include <Windows.h>
2 :
3 : int WINAPI WinMain(
4 : HINSTANCE hInstance,
5 : HINSTANCE hPrevInstance,
6 : LPSTR lpCmdLine,
7 : int nCmdShow
8 : )
9 : {
10: MessageBox(NULL, TEXT("こんにちは"), TEXT("メッセージ"), MB_OK);
11: return 0;
12: }
13:

コンパイル方法:
> gcc -w source.c -o hello.exe

実行方法:

> hello

誰か教えてください!

質問者からの補足コメント

  • すいません。言い忘れました。utf-8でコンパイルしたいです。

      補足日時:2021/03/16 13:45
  • 調べてみてたんですが、WindowsAPIの記事がありませんでした

    No.1の回答に寄せられた補足コメントです。 補足日時:2021/03/16 14:05

A 回答 (2件)

コンパイルオプションに "-D UNICODE" を付けてみてください。


要するに
gcc -w -D UNICODE source.c -o hello.exe
とします。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。できました。

お礼日時:2021/03/16 14:09

えっと。

。。(^^;

まずはGoogleなどで「gcc utf-8 文字化け」といった簡単なキーワードで検索されてみて下さい。

参考まで。
この回答への補足あり
    • good
    • 1
この回答へのお礼

回答ありがとうございます。MessageBoxに表示させると文字化けしてしまいます。

お礼日時:2021/03/16 14:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!