Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zawiera niepodpisane 8-bitowe (1-bajtowe) liczby całkowite, które wahają się w wartości od 0 do 255.
Uwagi
Byte Użyj typu danych, aby zawierać dane binarne.
Wartość domyślna to Byte 0.
Przypisania literału
Zmienną Byte można zadeklarować i zainicjować, przypisując jej literał dziesiętny, literał szesnastkowy, literał ósemkowy lub (począwszy od języka Visual Basic 2017) literał binarny. Jeśli literał całkowity znajduje się poza zakresem wartości Byte (czyli jeśli jest mniejsza niż Byte.MinValue lub większa Byte.MaxValue), wystąpi błąd kompilacji.
W poniższym przykładzie liczby całkowite równe 201, które są reprezentowane jako dziesiętne, szesnastkowe i literały binarne są niejawnie konwertowane z liczby całkowitej na byte wartości.
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
Uwaga
Należy użyć prefiksu &h lub &H oznaczyć literał szesnastkowy, prefiks &b lub &B oznaczać literał binarny oraz prefiks &o lub &O oznaczać literał ósemkowy. Literały dziesiętne nie mają prefiksu.
Począwszy od języka Visual Basic 2017, można również użyć znaku podkreślenia , _jako separatora cyfr, aby zwiększyć czytelność, jak pokazano w poniższym przykładzie.
Dim byteValue3 As Byte = &B1100_1001
Console.WriteLine(byteValue3)
' The example displays the following output:
' 201
Począwszy od języka Visual Basic 15.5, można również użyć znaku podkreślenia (_) jako separatora wiodącego między prefiksem a cyframi szesnastkowymi, binarnymi lub ósemkowymi. Na przykład:
Dim number As Byte = &H_6A
Aby użyć znaku podkreślenia jako separatora wiodącego, należy dodać następujący element do pliku projektu Visual Basic (*.vbproj):
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
Aby uzyskać więcej informacji, zobacz Wybieranie wersji języka Visual Basic.
Porady dotyczące programowania
Liczby ujemne. Ponieważ
Bytejest typem niepodpisanym, nie może reprezentować liczby ujemnej. Jeśli używasz operatora jednoargumentowego minus (-) w wyrażeniu, które oblicza typ , Visual Basic konwertujeBytewyrażenie naShortpierwsze.Konwersje formatu. Gdy program Visual Basic odczytuje lub zapisuje pliki albo wywołuje biblioteki DLL, metody i właściwości, może automatycznie konwertować między formatami danych. Dane binarne przechowywane w
Bytezmiennych i tablicach są zachowywane podczas takich konwersji formatów. Nie należy używać zmiennejStringdla danych binarnych, ponieważ jej zawartość może być uszkodzona podczas konwersji między formatami ANSI i Unicode.Poszerzenie. Typ
Bytedanych rozszerza się naShort, ,UShortIntegerUIntegerLongULong, ,DecimalSinglelub .DoubleOznacza to, że można przekonwertowaćBytena dowolny z tych typów bez napotkania błędu System.OverflowException .Wpisz znaki.
Bytenie ma znaku typu literału ani typu identyfikatora.Typ struktury. Odpowiedni typ w programie .NET Framework jest strukturą System.Byte .
Przykład
W poniższym przykładzie b jest zmienną Byte . Instrukcje przedstawiają zakres zmiennej i zastosowanie do niej operatorów przesunięcia bitowego.
' 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)