C#プログラムの変数と定数

今回のC#プログラミング学習は、変数と定数について学習します。

C#に限らず、プログラムには変数だけでなく定数も必要なので、ここでしっかり学習しておきましょう。

プログラムのダウンロード

まずは今回学習していくためのプログラムをダウンロードしましょう。

ここをクリックして「Sample.zip」ファイルをダウンロードしてください。

ZIP形式になっているので、ダウンロードしたら、マウスの右クリックで「すべて解凍」を選びます。

すると、Sampleプロジェクトが展開されます。

プログラムファイルを開く

Sampleプロジェクトの中に「Sample.sln」ファイルがあるので、このファイルを開くとVisualStudioのVisualC#が立ち上がります。

ソリューションエクスプローラから「Program.cs」を開くと、以下のようなプログラムが表示されます。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            const double Pi = 3.14;

            // パイの値を書き換えてみる
            // Pi = 3;

            Console.Write("Piの値は{0}です", Pi);
            Console.ReadLine();
        }
    }
}

プログラムのビルド

F7キーを押すとプログラムのビルドが行われ、実行ファイルが作成されます。


VisualC#でビルドした様子

プログラムの実行

F5キーを押すとプログラムが実行されます。


プログラムを実行した様子

「Piの値は3.14です」と表示されるのでEnterキーを押すとプログラムが終了します。

プログラム解説

それでは今回学習するC#プログラムを見てみましょう。

変数と定数

C#に限らず、プログラムには変数と定数という考え方があります。

変数というのは以前学習したように、中身を自由に入れ替えることのできる箱のことです。

これに対して定数というのは、中身を変えることのできない箱のことです。

あなたがプログラミング初心者の場合、中身を自由に変えることのできる変数は便利なので必要だというのはわかるけど、中身を変えることのできない定数は本当に必要なのかと思われるかもしれませんね。

実はこれは言葉の使い方の問題で、「中身を変えられない」というといかにも不便そうなんですが、そうではなく「定数とは、中身を変えてはいけないものを入れる」と言い換えたらいかがでしょう。

今回のサンプルプログラムであれば、「Pi(パイ)」という定数が出てきます。

パイつまり円周率は3.14と決まっているものなので、プログラムの実行中に知らないうちに4とか5とかになったら困りますよね。

そういうときに定数を使うわけです。

プログラムの流れ

今回は定数の紹介的なプログラムなので、流れもすごくシンプルです。

まずは定数「Pi」を宣言し、「3.14」という値を代入します。

次のコメント行はパスされますから、あとは定数「Pi」の中身を表示してプログラム終了です。

定数の使い方

定数の使い方は変数の使い方とほぼ同じです。

定数を宣言するには、型名の前に「const」を付けます。

サンプルプログラムでは以下の部分です。

const double Pi = 3.14;

定数なので、宣言と同時に値を代入します。

あとは変数と同じように使えるので、普通に値の表示もできます。

Console.Write("Piの値は{0}です", Pi);

定数の実験

定数というのは、中身が変化すると困る値を格納します。

ということは、定数扱いにすると、プログラマーが知らないうちに値が変わってしまったとしてもそれを防いでくれるはずです。

本当かどうか実験してみましょう。

サンプルプログラム内の一部コメントを無効化し、以下のように書き換えます。

// パイの値を書き換えてみる
Pi = 3;

これで途中に「Pi」の値を「3.14」から「3」に書き換える処理が入りました。

これでビルドしてみると…。

やっぱりエラーが出てビルドできませんでした。

表示内容は「代入式の左辺には変数、プロパティ、またはインデクサーを指定してください。」というものです。

やっぱりパイは3.14ですよね。