UShort, type de données (Visual Basic)

Contient des entiers 16 bits (2 octets) non signés dont la valeur est comprise entre 0 et 65 535.

Notes

Utilisez le type de données UShort pour contenir des données binaires trop volumineuses pour Byte.

La valeur par défaut de UShort est 0.

Affectations littérales

Vous pouvez déclarer et initialiser une variable UShort en lui affectant un littéral décimal, un littéral hexadécimal, un littéral octal ou (à partir de Visual Basic 2017) un littéral binaire. Si le littéral entier est en dehors de la plage de UShort (autrement dit, s’il est inférieur à UInt16.MinValue ou supérieur à UInt16.MaxValue, une erreur de compilation se produit.

Dans l’exemple suivant, les entiers égaux à 65 034 représentés comme des littéraux décimaux, hexadécimaux et binaires sont assignés aux valeurs UShort.

Dim ushortValue1 As UShort = 65034
Console.WriteLine(ushortValue1)

Dim ushortValue2 As UShort = &HFE0A
Console.WriteLine(ushortValue2)

Dim ushortValue3 As UShort = &B1111_1110_0000_1010
Console.WriteLine(ushortValue3)
' The example displays the following output:
'          65034
'          65034
'          65034

Notes

Vous utilisez le préfixe &h ou &H pour désigner un littéral hexadécimal, le préfixe &b ou &B pour désigner un littéral binaire, et le préfixe &o ou &O pour désigner un littéral octal. Les littéraux décimaux n’ont pas de préfixe.

À compter de Visual Basic 2017, vous pouvez également utiliser le caractère de soulignement, _, comme un séparateur numérique pour améliorer la lisibilité, comme dans l’exemple suivant.

Dim ushortValue1 As UShort = 65_034
Console.WriteLine(ushortValue1)

Dim ushortValue3 As UShort = &B11111110_00001010
Console.WriteLine(ushortValue3)
' The example displays the following output:
'          65034
'          65034

Depuis Visual Basic 15.5, vous pouvez également utiliser le caractère de soulignement (_) comme séparateur de début entre le préfixe et les chiffres hexadécimaux, binaires ou octaux. Par exemple :

Dim number As UShort = &H_FF8C

Pour utiliser le caractère de soulignement comme séparateur de début, vous devez ajouter l’élément suivant à votre fichier projet Visual Basic (*.vbproj) :

<PropertyGroup>
  <LangVersion>15.5</LangVersion>
</PropertyGroup>

Pour plus d’informations, consultez Sélectionner la version du langage Visual Basic.

Les littéraux numériques peuvent également inclure le US ou le uscaractère de type pour désigner le type de données UShort, comme le montre l’exemple suivant.

Dim number = &H_5826us

Conseils de programmation

  • Nombres négatifs. Étant donné que UShort est un type non signé, il ne peut pas représenter un nombre négatif. Si vous utilisez l’opérateur unaire moins (-) sur une expression qui prend la valeur de type UShort, Visual Basic convertit d’abord l’expression en Integer.

  • Conformité CLS. Le type de données UShort ne fait pas partie de la CLS (Common Language Specification), de sorte que le code conforme CLS ne peut pas consommer un composant qui l’utilise.

  • Extension. Le type de données UShort s’étend à Integer, UInteger, Long, ULong, Decimal, Single, et Double. Cela signifie que vous pouvez convertir UShort en l’un de ces types sans rencontrer d’erreur System.OverflowException.

  • Caractères de type. L’ajout de caractères de type littéral US à un littéral force ce dernier en type de données UShort. UShort ne possède pas de caractère de type d’identificateur.

  • Type .NET Framework. Le type correspondant dans le .NET Framework est la structure System.UInt16.

Voir aussi