はじめに
この記事について
「C言語の基礎を学ぼう」をテーマに、自身の知識 + α をアドベントカレンダーにまとめます。
25日間でC言語をマスターしよう - Qiita Advent Calendar 2025 - Qiita
こんな方を対象としています
-
コンピュータがプログラムをどのように動かしているか知りたい/知らない方
-
プログラミングをしてみたい方
-
C言語初心者の方
C言語を学ぶメリット
-
コンピュータの仕組みを知ることができる
- メモリ操作のような命令を使用
⇒ プログラミングを通じてコンピュータ内部の動作を学べる
- メモリ操作のような命令を使用
-
アルゴリズムを考える力を鍛えられる
- 細かい命令を組み合わせて自身のしたいことを実現することが多い
⇒ 実行速度やメモリ効率を考えることも可能
⇒ より良いアルゴリズムを求めて...
- 細かい命令を組み合わせて自身のしたいことを実現することが多い
-
ほかの言語の習得の基礎になる
- ほぼすべての言語はC言語で説明できる
⇒ 「この言語のこの命令はC言語のあれのことか...。」と推測できるので理解が早くなる
- ほぼすべての言語はC言語で説明できる
環境構築
Windows 11 Home(24H2)を使用しています。
1. 下記をインストール
-
MinGW
-
MinGWに含まれているgcc(コンパイラ)を利用します。
-
gccはC言語を機械語へ変換するプログラムです。
-
-
Visual Studio Code
-
(拡張機能)Japanese Language Pack for Visual Studio Code
- VS Code を日本語化します。
- VS Code を日本語化します。
-
(拡張機能)C/C++ Extension Pack
-
C言語の色分けおよびエラー部に波線が出る静的解析をしてくれます。
-
同名のものがいくつかありますが、Microsoftのものをインストールしました。
-
-
(拡張機能)Code Runner
- プログラムのコンパイルと実行をワンクリックでできるようにするツールです。
-
丁寧にまとめてくださっている記事がありました!下記を参考に動作確認まで進めました。
C/C++をVSCodeで開発するための環境構築 #MinGW - Qiita
2. (日本語が文字化けする場合)文字コードの設定
動作確認まで完了したら下記ソースコードを実行します。
#include <stdio.h>
int main(void) {
printf("こんにちは");
return 0;
}
下記のように実行結果が文字化けする場合、文字コードの設定が必要です。
縺薙s縺ォ縺。縺ッ
ソースコードに書いた「こんにちは」はUTF-8、コンソールに表示された「こんにちは」はShift-JISで解釈されているため、文字化けが発生しています。
Code Runnerのgccコマンド実行時に -fexec-charset=CP932 を付与することで解消できました。
下記を参考にしました!
【VSCode × MinGW】(C言語) 実行時にターミナルが文字化けするときの対処方法
(上記リンク 2. CodeRunner 参照)
これで環境構築が完了です。
C言語の基本構造
/*
* 先頭で「ヘッダファイル」をincludeします。
* ヘッダファイルは様々な関数(機能)が定義されたファイルです。
* 今回はprintfを使用するため、stdio.hをincludeしています。
*/
#include <stdio.h>
/*
* プログラムを実行したとき、はじめに実行されるのがmain関数です。
*
* 先頭のintは「戻り値」の型です。呼び出し元に結果を返却することができます。
* 今回はコンピュータに正常終了を伝える目的で「0」を返却するようにしています。
* そのため、整数値を表すintを記載しています。
*
* ()内には「引数(ひきすう)」を定義することができます。
* voidは「無い」ことを意味する語句です。
* 今回は実行時に値を受け取らないため引数を定義していません。
*/
int main(void) {
// メインの処理を記載します。
printf("Hello, world!");
// コンピュータに正常終了を伝えるために0を返却します。
return 0;
}
// で行末までのコメント、 /* と */ で囲むことで複数行のコメントを記載できます。
おわりに
プログラミングを始める上で、環境構築が一番の壁な気がしています。その壁の向こうには広大な世界が広がっています。楽しみですね。
参考文献
↓↓↓ はじめてプログラミングを学んだときに読んだ本です ↓↓↓
詳細(プログラミング入門 C言語)|プログラミング|情報|実教出版