C言語を学習していると日本語を出力したい時がありますよね。

そんな時に、UTF-8で普通にRUNするだけでは、日本語が文字化けしてしまうことが多いです。

ソースコード

#include<stdio.h>
int main(void){
    printf(“こんにちは!\n”);
}

結果

本記事では、簡単に文字化けを直せる方法(VScode)と確実に文字化けを直せる実行方法を解説します。

ちなみに筆者はVScodeを使用しています。

C言語に関する解説をまとめています。
>C言語解説まとめ!

目次

簡単に文字化けを直す方法(VScode)

そもそも「UTF-8」「Shift JIS」に変える方法です。

これをすることで、ほとんどの日本語出力が問題なく行えるようになります。

やり方は以下の通りです。

まず、VScodeの右下に「UTF-8」と書かれていると思います。
そこをクリックしてください。

そうすると画面上部の検索画面が開くと思ますので、

「エンコード付きで再度開く」

を選択し、「Japanese(Shift JIS)」を探して選択してください。

そうすれば後は実行するだけで日本語が出力できると思います。

しかし、「Shift JIS」では出力できずに文字化けしてしまう日本語もあるんですよね。

使いそうなものでは、「ガソリン」という単語や「能」「予」「構」などの漢字も文字化けします。
このように、「Shift JIS」だけではすべての日本語に対応できません。

次で紹介する「確実に文字化けを直す実行方法」で実行してみてください!

確実に文字化けを直す実行方法

プログラムのファイルはUTF-8で保存してください。

コマンドプロンプトを用いて実行します。

検索欄などで「cmd」と検索し、コマンドプロンプトを開いてください。

まず最初に、自分がプログラムを保存しているファイルの場所を指定して下さい。

cd \Users\OneDrive\デスクトップ\

のような感じです。これは人によって違うと思いますので、自分が保存している場所を指定してください。

次にコンパイルをしていきます。(ここが大事!!)

僕は今回ファイル名を「moji」にしているので、次のような書き方になります。

gcc -o moji moji.c

これでコンパイルを行えます。ですが、今回のように日本語を出力させたい場合もう一文付け足します

gcc -o moji moji.c -fexec-charset=cp932

これでコンパイルしましょう。

後は実行するだけで結果が得られると思います。

実行方法はコマンドプロンプトにファイル名を入力するだけです。

実際にやってみます。

しっかりと結果が得られましたね!

この方法であればどんな日本語でも出力できます。

最後に

最後まで読んでいただきありがとうございます!

僕も最初はなんで文字化けするのか分からずに苦戦していました。

今回ご紹介した方法は少しめんどくさいですが、確実に出力できますので、使ってみてください。

本記事が困っている人の参考になればうれしいです!

C言語に関する解説をまとめています。
>C言語解説まとめ!