プログラミング初心者必見!変数とは?定数との違いも紹介

変数ってよく出てくるけど、よくわからない…
変数と定数ってどう違うの?

プログラミング入門者や初心者の方が参考書などで勉強している際に、序盤で必ず必要になってくる変数。なんとなくわかるけど、完全には理解できていないという方も多いのではないでしょうか?

そこでこの記事では、「変数」という概念について、初心者の方でもわかりやすくできるだけ専門用語は使わずに解説していこうと思います。

プログラミングにおける変数とは?

早速ですが、変数について説明していこうと思います。多くの場合、参考書などでは「変数=数字や単語をを入れておく箱」のようなものと解説されています。これだけでは、なんのことかわかりにくいと思うので、もっと詳しく見ていきましょう。

変数を実際に使った例

プログラミングにおける変数は、値や文字列を変数に格納しておくことが出来ます。また、変数には好きな名前をつけることで管理しやすくしているのも特徴です。文字ばかり見ていてもわかりにくいと思うので、実際に変数を使ったサンプルコードを見ていきましょう。

number = 1;

上記のコードでは、「number」という名前をつけた変数に数字の「1」を格納しています。プログラミングでは、このように変数に「=」で値を格納することを「代入」と呼ぶので一緒に覚えておいてください。

このように変数に値を代入することで何が便利かと言うと、この「number」という変数は使い回しができるので、例えば下記のサンプルコードのように計算式などで扱うことが出来ます。

a = 1;
b = 3;
answer = a + b;

このサンプルコードでは、「a」「b」という変数に数字の「1」「3」をそれぞれ代入して、「a + b」の結果を「answer」という変数に代入しています。

このように変数の値は何度も使いまわして、様々な計算などに利用することが出来ます。

変数は一度数値や文字列を保持すると他の値を代入し直さない限りは、プログラムを起動中ずっと保持し続けることが出来ます。

逆に言うと、プログラムが終了すると変数に格納された値を次回起動時にも保持したい場合には、データベースや外部ファイルといったものに保存しておく必要があります。

変数の注意点

注意点

変数の注意点

では次に、変数を扱う上での注意点の説明をします。

変数の型と種類

ここまでは大きく「変数」として解説しました。ですが、その変数にもいくつか種類があります。

  • 整数型
  • 浮動小数型
  • 文字列型

順番に簡単に解説すると、整数型は「整数を扱うための変数」浮動小数型は「少数を扱うための変数」文字列型は「文字を扱うための変数」です。このように変数の種類のことを「型やデータ型」といった呼び方をします。

整数を代入したいのであれば、整数型の変数を用意する必要があり、文字を代入したいのであれば、文字列型の変数を用意する必要があるのです。プログラミング言語によっては、正しいデータ型でなければエラーが出ることもあるので、注意が必要です。

データ型には様々な物があり、深掘りすると実に多くの種類があるのですが、プログラミング言語によっても種類や数は変わってきますので、ここでは深く紹介しません。

変数の名前はわかりやすく

変数を使うためにはその変数に名前をつけなければいけません。

その名前がわかりにくい名前の場合、その変数がなんのための値を保持しているのかがわからなくなってしまいます。コードを書いた人以外の第三者がみても明らかになんの変数なのかわからない場合や、別のものと勘違いさせてしまうような命名はやめておきましょう。

例えば、下記のサンプルコードを見てください。

a = 24;
b = “tarou”;

このように、変数名が「aやb」といったよくわからない名前をつけてしまうと、その変数はなんの値を保持しているものかわからないため、バグや不具合の原因になってしまうこともあります。

では上記のサンプルコードのような場合はどのようにするのがいいか改修してみたものをご紹介します。

age = 24;
name = “tarou”;

このようにそれぞれの変数名を年齢や名前といった名前をつけると、その変数には何が入っているものなのか一目でわかるので、間違って本来入れるべきではない値を入れてしまう事故なども防げます。

また、変数名には基本的に英語で(namae ではなく name)命名するので覚えておいてください。

変数の使い方

ここからは変数を実際に使うにあたって、どのようにして使うのかをみていきましょう。変数を使う上で大切なことが大きく分けて3つあります。

  • 変数の宣言
  • 変数の初期化
  • 変数に値を代入

上記3つについて順番にみていきましょう。

変数の宣言

変数を扱う上で必ず必要なのが、「変数の宣言」です。

簡単に言うと、これからこの変数を使います!と宣言することです。特に難しく考える必要はありません。例えば、年齢を格納する整数型の変数を宣言したいときは、下記のように書きます。

int age;

たったこれだけです。ここで新しい単語「int」が出てきましたが、これは整数型ですよ!という意味を持っています。

このような変数の型は「整数型 = int, 文字列型 = string」などといろいろあり、プログラミング言語毎に変わってくるので、あなたが学びたい言語に添ったものを学びましょう。

変数の初期化

では次に変数の初期化についてみていきましょう。「データ型 変数名 = 値;」このように変数の宣言と同時に変数に値を代入することを変数の初期化といいます。

初期化をする理由としては、変数に値が代入されていないのに変数を使ってしまうといったミスを防ぐことができます。

上記のように変数を初期化せずに、その変数をつかってしまうとプログラム上ではエラーとなってしまいますので、注意が必要です。

また、宣言されている変数名と少しでも違った名前で参照しようとしてしまった場合などにもエラーとなりますので、大文字や小文字が区別されるプログラミング言語ではさらに気をつけましょう。

変数に値を代入

ここまでの章で何度か代入を行ってきたので、おおよその理解はできていると思いますので、簡単におさらいしておきます。変数に値を代入をするには、下記のサンプルコードのように「変数名 = 値」とします。

number = 1;

こうすることで、numberという変数に数字の1が代入されます。

変数を使った簡単な計算の使用例

では、ここまでで覚えた内容をおさらいしながら簡単な計算の使用例をご紹介します。

        int total_price = 0;
        int tax = 0;
        total_price = 100 + 20 + 80;
        tax = total_price / 10;
        total_price = total_price + tax;

このサンプルコードでは、まず1,2行目で今回使う変数の宣言と初期化を行い、3行目では、3つの値を足してtotal_price変数に保持します。4行目では消費税を計算して、5行目でtotal_priceから消費税であるtaxを足して税込みの値に計算しています。

このように基本さえ分かればある程度のプログラムは組めるので、一気に上達できますね。とにかくコードを実際に書いて自分なりに簡単でもいいので、実行することが大切です。

変数と定数の違いは?

疑問

変数と定数の違いは?

変数と概念で「定数」というものがあるのですが、「変数と定数」その違いについて少しお話しておきます。

ここでは、「似たような概念」と少し難しい言い方をしてしまいましたが、よく見てみるととても簡単です。その違いはざっくり下記のようになります。

  • 変数は、値を何度も書き換えることができる箱
  • 定数は、値を一度入れると変えることができない箱

このように、変数は文字通り中身を変える事ができ、定数は一度定めた値は変えることが出来ません。ここで、よくある質問の一つに「中身を書き換えられない定数はなんのためにあるの?」というものがあります。

一見すると、「定数」は何のためにあるのかわかりません。そんな定数の存在意義は特に「複数人」で開発しているときなどに役立ちます。

例えば、「消費税などの値が基本的に変わらないもの」を定数にいれることで、変えてわいけないコードを他の人が間違えて中身を入れ替えてしまうという事故を防ぐことが出来ます。

コーディングをした本人はよく内容を理解しているので、誤って変数の中身を書き換えることはないと思いますが、第三者はそれがわからず変えてしまう可能性はゼロではありません。

これと同じで自身で書いたコードだとしても、間違えてしまうことがなくなるので、中身が基本変わらないものは「定数」にしてしまいましょう。

変数と配列の違いは?

では次に、変数と配列の違いについて見ていきます。プログラミングでの「配列」とは変数の進化のようなもので、変数に並んで重要なものなので、こんなのもあるんだ。くらいで覚えておいてください。

配列とは、連続したデータを扱うものです。まずは、下記のサンプルコードを見てください。

hairetu = [“one”, “two”, “three”];

このように「hairetu」という変数には [] の中に , 区切りで3つの文字列が格納されています。複数の値を一つの変数に保持することができるのが「配列」です。

プログラミング言語による違いはあるのか?

ここまでの解説で変数の型などにプログラミング言語によって変わってくる。というような解説をしました通り、プログラミング言語により多少変わってきます。

今回紹介したサンプルコードは基本はC言語やC++、C#といった言語の記述方法でご紹介していますが、言語が変われば、大幅に記述や内容が変わることはありませんが変わるので、注意が必要です。

なので、これからプログラミング言語を勉強しようとしている方は、目的ややりたいことなどを明確にして、どの言語を勉強していくかを正しく選ぶところから始めるといいでしょう。

まとめ

今回は、プログラミングにおける「変数」について解説しました。

  • 変数は値や文字列を格納するための箱
  • 変数を使う時は型に注意
  • 変数は宣言と初期化をしてから使う
  • 変数はプログラミング言語によって扱い方や種類が変わるので注意

このようなことに注意しておきましょう。変数はどのプログラミング言語を選択したとしても、必須の知識になりますので、ここで基本はしっかりと抑えておくようにしてくださいね。

侍エンジニアは「人生を変えるプログラミング学習」をコンセンプトに、過去多くのフリーランスエンジニアを輩出したプログラミングスクールです。プログラミングに役立つ情報や有用な情報を発信していきます。
サービスページはこちら

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI ENGINEER Plus

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら