C言語学習ポータル(無料版) 学習コンテンツ 変数・型・演算子 変数とは名前付きの箱

📦 変数・型・演算子

変数とは名前付きの箱

無料公開版に収録・読む目安 12分

🎯 宣言・代入・初期化を区別し、型のついた変数を正しく作って使える

買い物に行く前、メモに「牛乳」「卵」と書いておきます。あとで見返せるように、情報を紙という場所に置いておく。プログラムの変数も同じで、値をとっておくための名前付きの箱です。

箱の作り方

#include <stdio.h>

int main(void) {
    int tanka = 250;   // 宣言と同時に値を入れる(初期化)
    int kosuu;         // 宣言だけ
    kosuu = 3;         // あとから入れる(代入)

    printf("%d 円 x %d 個 = %d 円\n", tanka, kosuu, tanka * kosuu);
    return 0;
}

int tanka = 250; は3つの意味を同時に持ちます。「整数用の箱を1つ用意する」「その箱に tanka という名札を付ける」「中身を250にする」。

箱を作ることを宣言、中身を入れることを代入、宣言と同時に入れることを初期化と呼びます。この3語は以後ずっと使うので、ここで区別しておきます。

箱には形(型)がある

箱を作るときは必ず型を指定します。型は箱の大きさと、入れられるものの種類を決めます。

・int … 整数(int。約 -21億〜21億)
・double … 小数(double)
・char … 1文字(char)
・bool … 真偽(bool。true / false)

🧪 ここはメモリの中身を1ステップずつ追う「メモリビジュアライザ」の場面です(アプリ本体で動きます)。

上のビジュアライザで、型の違う3つの箱が積まれていく様子を1行ずつ確かめてください。型ごとに箱の大きさが違うという事実が、あとでポインタを学ぶときの土台になります。

名前の付け方

・使えるのは英数字と _。先頭に数字は置けません。
・大文字と小文字は別物(kosuu と Kosuu は違う箱)。
・int や return などの予約語は使えません。
・意味の分かる名前にします。a より kosuu、x より tanka。

代入は「右から左へコピー」

#include <stdio.h>

int main(void) {
    int a = 5;
    int b = 3;
    a = b;      // b の中身を a に写す
    b = 100;    // b だけ変わる
    printf("a=%d b=%d\n", a, b);
    return 0;
}

出力は a=3 b=100 です。a = b; は「a と b をつなぐ」のではなく「その瞬間の b の中身を a にコピーする」。写し終えたあと、2つは無関係になります。

罠・注意

初期化しない箱の中身はゴミ。 int n; と書いただけで中を読むと、前に誰かが使った残骸が出てきます。0とは限りません。宣言したらすぐ初期化する癖をつけます。

同じ名前で2回宣言できない。 同じ範囲の中では、名札は1つだけです。

型に合わないものは静かに変形する。 int n = 3.7; は 3 になります。エラーにならず黙って削られるのが、Cの怖いところです。

ビット箱の名前は自分への手紙。3か月後の自分が読んで意味が分かる名前なら合格だよ。

まとめ

変数は名前付きの箱で、作るときに型で形が決まります。宣言・代入・初期化を区別し、宣言したらすぐ初期化。代入は右から左へのコピーで、コピー後は別々の箱です。

要点まとめ

アプリで演習問題まで解く(無料・登録不要)

この項目に出てくる用語

変数へんすう

値を入れておくための名前付きの箱のこと。名前をつけることで中身を自由に出し入れできる、プログラムの記憶場所にあたる。変数名は自由に付けられるが、意味の分かる名前にすると読みやすいコードになる。

型かた

変数に入れられる値の種類と、確保するメモリの大きさを決める分類のこと。箱の形や大きさを決めるルールのようなものだと考えるとよい。int・double・charなど、C言語にはあらかじめ複数の型が用意されている。

int型いんとがた

整数を扱うための基本的な型のこと。小数点を持たない数値を格納する、C言語でもっとも使う機会の多い型のひとつにあたる。環境にもよるが、多くの場合4バイトの大きさで値を保持している。

double型だぶるがた

小数を含む数値を扱うための型のこと。floatより広い範囲と高い精度を持ち、実数計算における標準的な選択肢として使われる。小数点以下の桁数が多い計算でも、比較的高い精度を保てるのが特徴。

char型きゃらがた

1文字を表すための型のこと。実体は小さな整数であり、文字コード表に基づいて数値と文字が対応づけられている。'A'のようにシングルクォートで1文字を囲んで書き表す。

bool型ぶーるがた

true(真)かfalse(偽)のどちらかしか入らない型のこと。C23では標準の書き方としてbool・true・falseがそのまま使えるようになった。従来は0と1で真偽を表していたが、C23の書き方の方が意図が伝わりやすい。

同じトラックのほかの項目

int型と整数の世界intの範囲と限界値の調べ方を知り、long long・unsignedの使いどころが分かる 浮動小数点数 float / doubledoubleを既定として使い分け、小数に必ず誤差があることと比較の作法を理解する char型と文字コードcharが1バイトの小さな整数であることを理解し、文字と数値を相互に変換できる bool型と真偽——C23標準の書き方C23のbool/true/falseをそのまま使い、Cにおける真偽(0が偽・0以外が真)を説明できる 定数——const と constexprconstとconstexpr(C23)を使い分け、変わらない値を宣言時に固定できる 算術演算子と優先順位5つの算術演算子と優先順位を理解し、複合代入・インクリメントを正しく使える 整数の割り算と剰余の罠整数どうしの割り算が切り捨てになる理由を理解し、平均計算などで正しく対処できる 型変換——暗黙と明示暗黙の型変換が起きる方向を知り、キャストで意図を明示できる 2進数・16進数リテラル(0b / 0x / 桁区切り')0b・0x・8進の書き方の違いを理解し、C23の桁区切りで読みやすく数値を書ける sizeofとメモリ上のサイズsizeofで型と変数のバイト数を測り、型ごとに箱の大きさが違うことを実感できる オーバーフローという事件オーバーフローが起きる仕組みと危険性を理解し、桁の見積もりと予防策を実行できる
int型と整数の世界 ›

もっと先へ:ポインタ・メモリ・ファイル入出力・セキュアコーディングを含む全26トラックと、段位検定・模試のフルセットは完全版に収録しています。

完全版(BOOTH)を見る

📚 姉妹教材:手を動かして覚える Linux 教材 — Linuxとインフラの仕組みを地図で学ぶ

Web版 / BOOTH