解説:変数の基礎(値型)

Q1.宣言と初期化

 変数の宣言では、扱う変数の型と変数名を記述します。

 同じ行で代入記号(=)を使用して初期化を行うことができます。

// 宣言と初期化を1行でまとめて行うパターン
int intValue = 3;

// 画面に出力
Console.WriteLine(intValue);

宣言時に初期化を行わず、後の行で初期化することもできます。

一度宣言した変数を使う場合は型の表記は必要なく変数名のみで利用することができます。

// 変数の宣言
int intValue;

// 3で初期化
intValue = 3;

// 画面に出力
Console.WriteLine(intValue);

Q2.宣言無しで変数を使う

 Visual Studioの場合以下のようなエラーが表示されます。

エラー CS0103 現在のコンテキストに ‘sample’ という名前は存在しません

 エラーを解消するには型の宣言を追記します。

int sample = 4;

Q3.未初期化の変数

 未初期化の変数(厳密にはローカル変数)を使用すると以下のようなエラーが表示されます。

エラー CS0165 未割り当てのローカル変数 ‘sample’ が使用されました

Q4.int型の最大値・最小値

// int型の最大値を求める
int max = int.MaxValue;

Console.WriteLine(max);

// int型の最小値を求める
int min = int.MinValue;

Console.WriteLine(min);

Q5.変数名に使えない文字列

 Visual Studioでは沢山のエラーが表示されます。

 これまでの演習とはことなり変数名が青色で表示されているでしょう。

 これはこのclassという文字列がC#の予約語という予約された語句なので変数名に使うことができないためです。

 興味があったらC#の予約語について調べてみてください。

 ちなみに変数名のclassの右側に@をつけることで(おすすめはしませんが)予約語を変数名として使うこともできます。

// 左に@をつけることで変数名として使用できる
int @class = 6;
Console.WriteLine(@class);

Q6.uint型

 uintのuはunsigned(符号なし)の頭文字です。

 以下のように最大値、最小値を画面に表示してみると良く分かると思います。

int intMax = int.MaxValue;
int intMin = int.MinValue;

uint uintMax = uint.MaxValue;
uint uintMin = uint.MinValue;

Console.WriteLine(intMax);  // 2147483647
Console.WriteLine(intMin);  // -2147483648
Console.WriteLine();        // 一行空ける
Console.WriteLine(uintMax); // 4294967295
Console.WriteLine(uintMin); // 0

 同じように数値を扱う型のlongにはulongという風にunsigned(符号なし)の数値を扱うための変数があります。

 byteだけは元々0から255という正の数を扱う変数のため、対になるのはsbyteというsigned(符号あり)の頭文字をとった型になります。