C言語のきほん|VS Codeでプログラムを実行する

VS Codeだけでここまでできる。書く・直す・動かすを、ひとつの画面で気持ちよく始めよう。

ここまでで、C言語のソースファイルを作成して、コマンドプロンプトでコンパイル・実行する流れが見えてきました。
ここからは、もう一歩進んで、VS Codeの中だけでコンパイル・リンク・実行まで進める方法を身につけていきます。

実はVS Codeには、コードを書く画面だけでなく、コマンドを入力できるターミナル機能があります。これを使うと、わざわざ別でコマンドプロンプトを起動しなくても、同じ画面の中で作業できます。コードを書いて、すぐ下のターミナルで gcc を実行して、結果を確認して、またコードを直す……という流れがとてもスムーズになります。

このパートでは、次のことをやさしく丁寧に確認していきます。

  • VS Codeでターミナルを開く方法
  • ターミナルをコマンドプロンプトに切り替える理由
  • 文字コードをUTF-8にして日本語の文字化けを防ぐ方法
  • VS Code上でコンパイル・実行する基本手順
  • よくあるコンパイルエラーと、その見つけ方・直し方
  • そのあとにつながる hello.c の読み方の入口

最初は、ターミナルの設定やエラーメッセージで少し戸惑うかもしれません。
でも、VS Codeの中で一連の流れを回せるようになると、学習効率がぐっと上がります。
コードを書く練習と、エラーを直す練習が自然に進むようになりますよ。

VS Codeでプログラムを実行する流れを先に確認しよう

まずは、全体の流れをシンプルに見ておきましょう。
今回は、すでにVS Codeで cwork フォルダーを開いていて、その中に C言語のファイルを保存している前提で進めます。

全体の流れ(VS Code版)

手順内容ポイント
1ターミナルを開くVS Code内でコマンドを実行できる
2規定のプロファイルを Command Prompt にする操作しやすい
3文字コードを UTF-8 にする日本語の文字化け対策
4gcc でコンパイルするコンパイルとリンクがまとめて行われる
5実行ファイルを起動する実行結果をターミナルで確認
6エラーがあればVS Codeで修正する波線や問題タブも活用できる

イメージ図(VS Code内で完結)

VS Code(コードを書く)
   ↓
VS Codeターミナル(gccでコンパイル)
   ↓
VS Codeターミナル(実行)
   ↓
結果を確認して修正

この流れに慣れると、C言語の学習がかなりやりやすくなります。

VS Codeでターミナルを開く

まずは、VS Codeのターミナルを表示します。

開き方

  • メニューの 表示 → ターミナル をクリック
  • またはショートカットキーで開く

ターミナルは、画面の下側に表示されることが多いです。
ここにコマンドを入力して、コンパイルや実行ができます。

VS Codeのターミナルを使うメリット

メリット内容
画面を切り替えなくてよいエディタとターミナルが同じ画面にある
修正がすぐできるエラーを見てすぐコードに戻れる
学習しやすいコード・エラー・実行結果をまとめて確認できる

規定のプロファイルをコマンドプロンプトに変更する

VS Codeのターミナルは、PowerShell、Command Prompt など複数のシェルを使えます。
初期状態では PowerShell になっていることが多いので、ここでは説明をそろえるために Command Prompt を使う設定にしておきます。

設定手順(VS Codeのターミナル右上)

  1. ターミナルが表示されていなければ:表示 → ターミナル で開く
  2. ターミナル右上の + の隣にある下向き矢印をクリック
  3. 規定のプロファイルの選択 をクリック
  4. Command Prompt を選択
  5. 今開いているPowerShellのターミナルはゴミ箱アイコンで終了

これで、VS Codeのターミナル内でコマンドプロンプトが使えるようになります。

どうして Command Prompt にするの?

PowerShellでも実行はできますが、学習書の手順や表示例がコマンドプロンプト基準で説明されていると、Command Prompt に合わせたほうが迷いにくいです。
特に最初のうちは、表示の違いで混乱しないようにするのが大事です。

文字コードをUTF-8に変更する

VS Codeで作ったソースファイルは UTF-8 で保存されることが多いです。
そのままターミナルで日本語を表示しようとすると、文字化けすることがあります。

そこで、VS Codeのターミナルでも最初に次のコマンドを実行しておきます。

chcp 65001

実際の画面

これで、ターミナルのコードページを UTF-8 に変更できます。

なぜ必要なの?

項目文字コードの例
VS Codeで保存したソースUTF-8
コマンドプロンプトの既定表示Shift-JIS系(環境による)

このズレがあると、日本語の文字列が崩れて表示されることがあります。
最初に chcp 65001 を入れておくと、日本語表示のトラブルをかなり減らせます。

先に覚えておきたいポイント

  • コマンドプロンプトを開き直すと設定が戻ることがある
  • そのため、ターミナルを開いたら最初に chcp 65001 を実行する習慣がおすすめ

VS Code上でコンパイル・実行してみよう

まずは練習用のシンプルなプログラムを1本動かしてみます。

サンプルプログラム

一つ前の記事「ソースファイルの作成から実行まで」で使用した「hello.c」を使用します。

ファイル名:hello.c

// hello, world を表示するプログラム
#include <stdio.h>

int main(void)
{
    // hello, world を表示するプログラム
    printf("hello, world\n");

    return 0;
}

このプログラムはとても短いですが、C言語の基本的な形がすべて入っています。
まずはこれを保存して、VS Codeのターミナルでコンパイル・実行してみましょう。

コンパイルする

VS Codeのターミナルで、作業フォルダーが cwork になっていることを確認したら、次のコマンドを入力します。

gcc hello.c -o hello

コマンドの意味

部分意味
gccC言語のコンパイラを起動する
hello.cコンパイル対象のソースファイル
-o hello実行ファイル名を hello.exe にする

この1行で、内部ではコンパイルとリンクがまとめて実行されます。

成功したときの見え方

コンパイル成功時は、基本的に何も表示されずにプロンプトが戻ってきます。
これは正常な動きです。

実行する

続けて、次のコマンドで実行します。

hello

実行結果の例

hello, world

表示できたら成功です。
これで、VS Codeの中だけで 編集 → コンパイル → 実行 ができることを確認できました。

よくあるコンパイルエラーと対処法

ここはとても大事なところです。
C言語の学習では、エラーを出さずに進むことはほとんどありません。むしろ、エラーを正しく読んで直せるようになることが上達の近道です。

以下は、特によくあるエラーです。

セミコロンを忘れる

C言語では、文の終わりにセミコロンが必要です。

例(エラーになる書き方)

printf("hello, world\n")

最後の ; がないため、コンパイルエラーになります。

対処のコツ

  • エラーメッセージの行番号を見る
  • その行の最後に ; があるか確認する
  • 直したら保存して再コンパイルする

全角文字が混ざっている

コメントや文字列の中なら日本語はOKですが、コードの一部に全角文字が混ざるとエラーになりやすいです。

ありがちな例

  • 全角スペースが入っている
  • 全角の数字や記号が混ざっている
  • 変換が全角モードのままになっている

対処のコツ

確認ポイント内容
入力モード日本語入力がONのままになっていないか
記号; や () や {} が半角か
スペース見た目では分かりにくい全角スペースに注意

VS Codeは見た目が整っているぶん、全角スペースに気づきにくいことがあります。
怪しいときは、その行をいったん打ち直すのが早いです。

波括弧 {} の対応が間違っている

main 関数の中身は { と } で囲みます。
この対応が崩れると、構文エラーになります。

よくある例

  • 開き波括弧 { はあるのに、閉じ波括弧 } がない
  • 閉じ波括弧 } を余分に書いてしまう

対処のコツ

  • VS Codeの対応表示を使う(括弧にカーソルを置く)
  • インデントを整えて見る
  • main 関数の開始と終了を確認する

インデント(字下げ)をきれいにすると、波括弧の対応ミスはかなり見つけやすくなります。

ダブルクォーテーションとシングルクォーテーションの不一致

文字列は " で囲みます。
これが閉じていなかったり、途中でおかしくなるとエラーになります。

ありがちなミス

  • 開きは " なのに、閉じが ' になっている
  • 文字列の途中に " をそのまま入れてしまう

例(不一致の例)

printf("hello, world\n')

これは囲み方が一致していないためエラーになります。

補足(文字列中に " を入れたいとき)

文字列の中に " を入れたい場合は、エスケープが必要です。

printf("彼は \"C言語\" を勉強中です\n");

綴りの間違い

C言語は、予約語や関数名の綴りが少しでも違うと動きません。

よくある例

  • pritnf(printf の綴りミス)
  • retrun(return の綴りミス)
  • mian(main の綴りミス)

対処のコツ

  • エラーメッセージに出ている単語を確認する
  • 正しい綴りと見比べる
  • VS Codeの補完候補も参考にする

ヘッダーファイルのインクルード忘れ

printf を使うのに #include <stdio.h> がないと、エラーや警告の原因になります。

必要な行

#include <stdio.h>

覚え方のコツ

  • printf を使うなら stdio.h が必要
  • まずはセットで覚える

エラーメッセージの読み方と向き合い方

コンパイラは、エラーの場所や原因のヒントをかなり丁寧に教えてくれます。
最初は英語でびっくりするかもしれませんが、慣れるととても頼れる存在です。

エラー対応の基本ステップ

手順やること
1エラーメッセージの行番号を見る
2該当行とその前後を確認する
3記号、綴り、括弧、セミコロンを確認する
4修正して保存する
5もう一度 gcc を実行する

英語メッセージが苦手なとき

  • メッセージをコピーして翻訳ツールで確認する
  • まずは error、expected、missing などの単語に注目する

コピーの方法(補足)

環境コピー方法
コマンドプロンプト選択して Enter
VS Codeターミナル選択して Ctrl + C

こういう小さな操作も、覚えておくと学習がスムーズになります。

VS Codeでの学習が楽になるポイント

VS Codeは、コンパイル前でもミスの気配を教えてくれることがあります。
特に次の表示はよく使います。

VS Codeで見ておきたい場所

場所役割
波線表示記述ミスの候補を見つけやすい
問題タブエラーや警告の一覧を確認できる
ミニマップどのあたりに問題があるか見つけやすい

コンパイル時のエラーと、VS Codeの表示を両方見る習慣をつけると、修正のスピードが上がっていきます。

まとめ

VS Codeのターミナルを使うと、C言語の学習はとても進めやすくなります。

  • VS Code内でターミナルを開ける。
  • Command Prompt に切り替えると説明どおりに進めやすい。
  • chcp 65001 で日本語の文字化けを防ぎやすくなる。
  • gcc でコンパイルとリンクをまとめて実行できる。
  • エラーは行番号と内容を見て落ち着いて直せばOK

最初はエラーが出るのが普通です。
でも、VS Codeの波線表示や問題タブを使いながら直していくと、コードの読み方・書き方がどんどん身についていきます。

今回動かした経験を土台にして、C言語の基本構造をひとつずつ理解していきましょう。