Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Contiene interi senza segno a 8 bit (1 byte) compresi tra 0 e 255.
Osservazioni:
Usare il tipo di dati Byte per contenere dati binari.
Il valore predefinito di Byte è 0.
Assegnazioni di valori letterali
È possibile dichiarare e inizializzare una variabile Byte assegnandole un valore letterale decimale, un valore letterale esadecimale, un valore letterale ottale o (a partire da C# 2017) un valore letterale binario. Se il valore letterale integrale è esterno all'intervallo di Byte, vale a dire se è minore di Byte.MinValue o maggiore di Byte.MaxValue, si verifica un errore di compilazione.
Nell'esempio seguente, i valori interi uguali a 201 rappresentati some valori letterali decimali, esadecimali o binari vengono convertiti in modo implicito da valori integer a valori 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
Nota
Si utilizza il prefisso &h o &H per indicare un valore letterale esadecimale, il prefisso &b o &B per indicare un valore letterale binario e il prefisso &o o &O per indicare un valore letterale ottale. I valori letterali decimali non hanno prefissi.
A partire da Visual Basic 2017, è possibile anche usare il carattere underscore, _, come separatore di cifre per migliorare la leggibilità, come illustrato nell'esempio seguente.
Dim byteValue3 As Byte = &B1100_1001
Console.WriteLine(byteValue3)
' The example displays the following output:
' 201
A partire da Visual Basic 15.5, è possibile anche usare il carattere underscore (_) come separatore iniziale tra il prefisso e le cifre esadecimali, binarie oppure ottali. Ad esempio:
Dim number As Byte = &H_6A
Per usare il carattere underscore come separatore iniziale, è necessario aggiungere l'elemento seguente al file di progetto Visual Basic (*.vbproj):
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
Per altre informazioni, vedere Selezionare la versione del linguaggio visual Basic.
Suggerimenti per la programmazione
Numeri negativi. Poiché
Byteè un tipo senza segno, non può rappresentare un numero negativo. Se si utilizza l'operatore unario meno (-) su un'espressione che restituisce il tipoByte, Visual Basic converte innanzitutto l'espressione inShort.Conversioni tra formati Quando Visual Basic legge o scrive file o quando chiama DLL, metodi e proprietà, può eseguire automaticamente la conversione tra formati di dati. I dati binari archiviati in variabili e matrici
Bytevengono mantenuti durante tali conversioni di formato. Non è consigliabile usare una variabileStringper i dati binari, perché il relativo contenuto può essere danneggiato durante la conversione tra formati ANSI e Unicode.Ampliamento. Il tipo di dati
Bytepuò ampliarsi nel tipoShort,UShort,Integer,UInteger,Long,ULong,Decimal,SingleoDouble. È pertanto possibile convertireBytein uno di questi tipi senza generare un errore System.OverflowException.Caratteri di tipo.
Bytenon ha alcun carattere di tipo letterale o di tipo identificatore.Tipo di Framework. Il tipo corrispondente in .NET Framework è la struttura System.Byte.
Esempio
Nell'esempio seguente b è una variabile Byte. Le istruzioni illustrano l'intervallo della variabile e l'applicazione di operatori di spostamento a bit.
' 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)