変数は値を格納することができます。プログラムで変数に格納する書き方として、別の変数を値として指定したり、直接データを指定したりします。この節では直接データを指定する方法を学習します。プログラムの中で直接指定するデータを「リテラル」と呼びます。
VC#2013では次のような種類のリテラルを使います。
・ 整数
プログラムで整数値を指定するとint型、uint型、long型、ulong型のうちのいずれかとして扱われます(int型の値を超える場合はlong型など)。特定のデータ型として指定したい場合は「サフィックス」を使って表現します。
データ型名 | サフィックス | 指定例 |
---|---|---|
int型 | (なし) | 123 |
uint型 | u(もしくは、U) | 123u(もしくは、123U) |
long型 | l(もしくは、L) | 123l(もしくは、123L) |
ulong型 | ul(もしくは、UL、Ul、uL、lu、LU、Lu、lU) | 123ul(もしくは、123UL、123Ul、123uL、123lu、123LU、123Lu、123lU) |
decimal型 | 4バイト | 0~4,294,967,295(符号なし) |
long | 8バイト | -9,223,372,036,854,775,808~9,223,372,036,854,775,807(符号付き) |
ulong | 8バイト | 0~18,446,744,073,709,551,615(符号なし) |
・ 小数点型
プログラムで小数値を指定するとdouble型として扱われます。特定のデータ型として指定したい場合は次のようなサフィックスを使用して表現します。
データ型名 | サフィックス | 指定例 |
---|---|---|
float型 | f(もしくは、F) | 123.5f(もしくは、123.5F) |
double型 | d(もしくは、D、なし) | 123.5d(もしくは、123.5D、123.5) |
decimal型 | m(もしくは、M) | 123.5m(もしくは、123.5M) |
・ 16進数表現
プログラムでは数値を指定すると10進数で表します。C#では10進数と16進数で表現できます。16進数で表現するには次のように指定します。
基数 | 記号 | 指定例 |
---|---|---|
16進数 | 0x | 0xFFFF; |
プログラムでは文字列を指定するときは「"(ダブルクォーテーション)」で囲います。ただし、変数名を指定する場合は「"」は必要ありません。
○ プロジェクト
次のようにプロジェクトを作成してください。
プロジェクトの種類 | コンソール アプリケーション |
---|---|
プロジェクト名 | StringTest |
○ プログラム
次のようにプログラムを入力してください。
○ 実行結果
すもも
○ 解説
14行目ではstring型の変数strを宣言しています。17行目では変数strに文字列を代入しています。文字列は「”」で括って指定しています。20行目では変数strを表示しています。変数名を指定する場合は「”」で括っていません。
■ 文字
プログラムでは文字を指定するときは「’(シングルクォーテーション)」で囲います。また文字には、エスケープシーケンスと呼ばれる特殊な文字が用意されています
エスケープシーケンス | 文字 |
---|---|
¥' | 単一引用符 |
¥" | 二重引用符 |
¥¥ | 円記号 |
¥0 | Null |
¥a | ビープ音 |
¥b | バックスペース |
¥n | 改行 |
¥r | キャリッジリターン |
¥t | 水平タブ |
ブール型のリテラルには「true」と「false」が指定できます。trueは真を表し、falseは偽を表します。
VC#2013には「null」値という特別な値を扱うことができます。この値は、何も参照していない状態を表します。
○ プロジェクト
次のようにプロジェクトを作成してください。
プロジェクトの種類 | コンソール アプリケーション |
---|---|
プロジェクト名 | LiteralTest |
○ プログラム
次のようにプログラムを入力してください。
○ 実行結果
文字:a
ブール:True
null:
エスケープ
シーケンス
○ 解説
14~15行目では2つの変数を宣言しています。varキーワードを使って初期化されるデータから型を推論して変数が用意されます。16行目ではstring型の変数を用意して、その変数にnull値を代入しています。null値は主に参照型の変数に代入できます。
19~21行目では各種変数を表示しています。21行目ではstring型の変数を表示しようとしていますが、null値が格納されているため、表示できません。この場合のnullは文字列がないことを表します。
24行目ではエスケープシーケンスを文字列の途中で使用しています。「¥n」は改行を表すので、「¥n」のところで改行されて表示されます。