VBで変数を宣言する際に使用できるデータ型には次のような種類があります。
プログラムの中で数値を表現するためのデータ型です。
<整数型>
正・負を表現できます。
データ型名 | サイズ | 表現する範囲 |
---|---|---|
Sbyte | 1バイト | -128~127(符号付き) |
Byte | 1バイト | 0~255(符号なし) |
Short | 2バイト | -32,768~32,767(符号付き) |
UShort | 2バイト | 0~65,535(符号なし) |
Integer | 4バイト | -2,147,483,648~2,147,483,647(符号付き) |
UInteger | 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(符号なし) |
<小数点型>
小数をもつ数値を表現できます。
データ型名 | サイズ | 表現する範囲 |
---|---|---|
Single | 4バイト |
-3.4028235E+38~-1.401298E-45 (負の値) 1.401298E-45~3.4028235E+38(正の値) |
Double | 8バイト |
-1.79769313486231570E+308~-4.94065645841246544E-324(負の値) 4.94065645841246544E-324~1.79769313486231570E+308(正の値) |
<その他>
大きな数値を表現できます。
データ型名 | サイズ | 表現する範囲 |
---|---|---|
Decimal | 16バイト |
0~+/-79,228,162,514,264,337,593,543,950,335(小数点なし) 0~+/-7.9228162514264337593543950335(小数点以下 28 桁) 0以外の最小数は+/-0.0000000000000000000000000001(+/-1E-28) |
プログラムの中で文字を表現するためのデータ型です。
データ型名 | サイズ | 表現する範囲 |
---|---|---|
Char | 2バイト | 0~65535(符号なし) |
String | 可変長 | 0個~約20億個のUnicode文字 |
プログラムの中で数値や文字以外を表現するデータ型です。
データ型名 | サイズ | 表現する範囲 |
---|---|---|
Boolean | ― | True または、False |
Date | 8バイト | 0001年1月1日0:00:00(午前0時)~9999年12月31日 11:59:59 PM |
Object |
4バイト(32bit環境) 8バイト(64bit環境) |
任意の型を格納 |
変数は指定したデータ型によってデータの格納方法が異なります。格納方法には次のような種類があります。
・ 値型
変数にデータを代入すると、データが直接記憶されます。
例: Dim num As Integer = 100;
値型の場合、ある変数から別の変数に代入をすると、格納されている値ががコピーされます。そのため、同じ値の別のデータが存在することになります。
例: Dim tmp As Integer = num
・ 参照型
変数にデータを代入すると、データの格納先の情報が記憶されます。
例: Dim str As String = "文字列";
参照型の場合、ある変数から別の変数に代入すると、格納されているアドレスがコピーされます。そのため、同じデータを複数の変数で参照することができるようになります。
例: Dim list(1) As String
Dim tmp() As String = list
ローカル変数(詳細は後の節で説明)を使うときに、データ型を指定せずに宣言することができます。その場合、初期化に使用される式からデータ型が推論されます。
型推論の書式 |
---|
Dim 変数名 = 式 |
例:
Dim num = 100 ⇔ Dim num As Integer = 100
Dim dnum = 10.5 ⇔ Dim dnum As Double = 10.5
Dim str = "バナナ" ⇔ Dim str As String = "バナナ"