バイト (Byte) データ型 (Visual Basic)
0 から 255 までの値の範囲の符号なし 8 ビット (1 バイト) の整数を保持します。
Remarks
バイナリ データを格納するには、Byte
データ型を使用します。
Byte
の既定値は 0 です。
リテラルの代入
Byte
変数を宣言し、10 進リテラル、16 進リテラル、8 進リテラル、または (Visual Basic 2017 以降) バイナリ リテラルを代入することによって初期化できます。 整数リテラルが Byte
の範囲外にある場合 (つまり、Byte.MinValue より小さいか、Byte.MaxValue より大きい場合)、コンパイル エラーが発生します。
次の例では、整数 201 を 10 進リテラル、16 進リテラル、バイナリ リテラルで表したものが、Integer から byte
値に暗黙的に変換されています。
Dim byteValue1 As Byte = 201
Console.WriteLine(byteValue1)
Dim byteValue2 As Byte = &H00C9
Console.WriteLine(byteValue2)
Dim byteValue3 As Byte = &B1100_1001
Console.WriteLine(byteValue3)
' The example displays the following output:
' 201
' 201
' 201
注意
16 進リテラルを表すにはプレフィックス &h
または &H
を使い、バイナリ リテラルを表すにはプレフィックス &b
または &B
を使い、8 進リテラルを表すにはプレフィックス &o
または &O
を使います。 10 進リテラルには、プレフィックスはありません。
Visual Basic 2017 以降では、次の例に示すように、アンダースコア文字 _
を桁区切り記号として使って読みやすくすることもできます。
Dim byteValue3 As Byte = &B1100_1001
Console.WriteLine(byteValue3)
' The example displays the following output:
' 201
Visual Basic 15.5 以降では、プレフィックスと 16 進数、2 進数、または 8 進数の間に先頭の区切り記号としてアンダースコア文字 (_
) を使用することもできます。 次に例を示します。
Dim number As Byte = &H_6A
アンダースコア文字を先頭の区切り記号として使用するには、以下の要素を Visual Basic プロジェクト (*.vbproj) ファイルに追加する必要があります。
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
詳細については、「Visual Basic 言語バージョンの選択」を参照してください。
プログラミングのヒント
負の数値。
Byte
は符号なしの型であるため、負の数を表すことはできません。Byte
型に評価される式で、単項マイナス (-
) 演算子を使用すると、Visual Basic で式が最初にShort
に変換されます。形式変換。 Visual Basic でファイルの読み取りまたは書き込みを行うとき、または DLL、メソッド、およびプロパティを呼び出すときに、データ形式を自動的に変換させることができます。
Byte
変数および配列に格納されているバイナリ データは、そのような形式の変換時に保持されます。 バイナリ データにはString
変数を使用しないでください。ANSI 形式と Unicode 形式間の変換時に、その内容が破損する可能性があります。拡大変換。
Byte
データ型は、Short
、UShort
、Integer
、UInteger
、Long
、ULong
、Decimal
、Single
、またはDouble
に拡大変換されます。 これは、System.OverflowException エラーを発生させることなく、これらの型のいずれかにByte
を変換できることを意味します。型宣言文字。
Byte
には、リテラルの型文字も識別子の型文字も含まれません。Framework のデータ型 .NET Framework において対応する型は、System.Byte 構造体です。
例
次の例では、b
は Byte
変数です。 このステートメントでは、変数の範囲と、それに対するビットシフト演算子の適用を示しています。
' The valid range of a Byte variable is 0 through 255.
Dim b As Byte
b = 30
' The following statement causes an error because the value is too large.
'b = 256
' The following statement causes an error because the value is negative.
'b = -5
' The following statement sets b to 6.
b = CByte(5.7)
' The following statements apply bit-shift operators to b.
' The initial value of b is 6.
Console.WriteLine(b)
' Bit shift to the right divides the number in half. In this
' example, binary 110 becomes 11.
b >>= 1
' The following statement displays 3.
Console.WriteLine(b)
' Now shift back to the original position, and then one more bit
' to the left. Each shift to the left doubles the value. In this
' example, binary 11 becomes 1100.
b <<= 2
' The following statement displays 12.
Console.WriteLine(b)
関連項目
.NET