
【6日でできるC言語入門】変数の命名規則
C言語において、変数は「値を入れる箱」としてプログラムの中で重要な役割を果たします。しかし、変数名には自由度がある一方で、守らなければならない命名規則や避けるべき落とし穴も存在します。ここでは、変数の命名規則、命名の実践例、そして計算処理時の演算子について、C言語のサンプルプログラムを使って詳しく解説します。

1.変数名の命名規則
1.1. 変数名に使える文字とルール
C言語の変数名には、以下のようなルールがあります。
| ルール | 説明 | OK例 | NG例 |
|---|---|---|---|
| 使用できる文字 | 半角英字(A~Z, a~z)、数字(0~9)、アンダーバー(_)、ドル($) | value1, _abc | hello! |
| 最初の文字 | 英字、_、$で始める。数字から開始不可。 | a1, _test, $val | 1abc |
| 大文字・小文字の区別 | あり(numとNumは別物) | num, Num | |
| 予約語の利用 | 予約語(C言語で使われる単語)は使えない | count | int, for |
予約語の例(一部)int, return, if, while, for, double, char など
1.2. 命名のベストプラクティス
- 意味のある名前を付ける:何のための変数かわかるように
- 短すぎず長すぎず:可読性を重視する
- 複数単語はアンダーバーで区切る(例:student_score)
2.変数名と演算・代入の使い方
2.1 基本の代入と演算
C言語で変数への代入は=を使います。
数値や計算式、他の変数から値を代入することができます。
プロジェクト/ファイル名: Lesson16_1/main.c
#include <stdio.h>
int main(void) {
int total_score = 10; // 宣言と初期化
int add = 3;
total_score = total_score + add; // 代入
printf("合計得点は%d点です。\n", total_score);
return 0;
}実行結果
合計得点は13点です。2.2. 変数自身を使った演算
変数は、自分自身の値を使って計算し、その結果を再度自分自身に代入することがよくあります。
| 記述 | 意味 |
|---|---|
| a = a + 1 | aの値を1増やす |
| b = b * 2 | bの値を2倍にする |
また、代入演算子(+=, -=, *=, /=, %=)を使えば、より簡潔に記述できます。
| 演算子 | 使用例 | 同じ意味 |
|---|---|---|
| += | a += 1; | a = a + 1; |
| -= | b -= 3; | b = b - 3; |
| *= | c *= 2; | c = c * 2; |
| /= | d /= 4; | d = d / 4; |
| %= | e %= 5; | e = e % 5; |
プロジェクト/ファイル名: Lesson16_2/main.c
#include <stdio.h>
int main(void) {
int count = 1;
printf("初期値: %d\n", count);
count += 2;
printf("2増やした値: %d\n", count);
count *= 3;
printf("3倍した値: %d\n", count);
return 0;
}実行結果
初期値: 1
2増やした値: 3
3倍した値: 93.命名NG例と命名のコツ
3.1. 命名NG例とその理由
| 変数名 | なぜNGか |
|---|---|
| 1st | 数字で開始している |
| for | 予約語を使用している |
| my-value | ハイフン(-)が入っている |
| num@data | @など記号が入っている |
3.2. 命名のコツ
- 意味のある単語を使う
- 省略しすぎない(例:dよりdataやday)
- 一貫したスタイルを使う(例:すべて小文字+アンダーバー)
まとめ
- C言語の変数名には厳格なルールがある。
- 予約語や記号、数字で始まる名前は避ける。
- 代入や演算時には代入演算子も活用しよう。
- 分かりやすい名前付けを意識することで、バグの防止やチーム開発でも役立つ
実際にプログラムを入力しながら、変数名の命名と使い方に慣れていきましょう!
