Char, type de données (Visual Basic)
Contient des points de code 16 bits (2 octets) non signés dont la valeur est comprise entre 0 et 65535. Chaque point de code ou code de caractère représente un caractère Unicode unique.
Notes
Utilisez le type de données Char
lorsque vous devez contenir un seul caractère et n’avez pas besoin de la surcharge de String
. Dans certains cas, vous pouvez utiliser Char()
, un tableau d’éléments Char
, pour contenir plusieurs caractères.
La valeur par défaut de Char
est le caractère avec un point de code de 0.
Caractères Unicode
Les 128 premiers points de code (0 à 127) d’Unicode correspondent aux lettres et aux symboles d’un clavier américain standard. Ces 128 premiers points de code sont identiques à ceux définis par le jeu de caractères ASCII. Les 128 points de code suivants (128 à 255) représentent des caractères spéciaux, tels que des lettres alphabétiques latines, des accents, des symboles monétaires et des fractions. Unicode utilise les points de code restants (256-65535) pour une grande variété de symboles, y compris des caractères textuels, diacritiques et symboles mathématiques et techniques internationaux.
Vous pouvez utiliser des méthodes comme IsDigit et IsPunctuation sur une variable Char
pour déterminer sa classification Unicode.
Conversions de type
Visual Basic ne convertit pas directement entre Char
et les types numériques. Vous pouvez utiliser la fonction Asc ou AscW pour convertir une valeur Char
en un Integer
qui représente son point de code. Vous pouvez utiliser la fonction Chr ou ChrW pour convertir une valeur Integer
en un Char
possédant un point de code.
Si le commutateur de vérification de type (l’instruction Option Strict) est activé, vous devez ajouter le caractère de type littéral à un littéral de chaîne à caractère unique pour l’identifier comme le type de données Char
. L'exemple suivant illustre ce comportement. La première affectation à la variable charVar
génère l’erreur du compilateur BC30512, car Option Strict
est activé. La deuxième compile correctement, car le caractère de type littéral c
identifie le littéral comme une valeur Char
.
Option Strict On
Module CharType
Public Sub Main()
Dim charVar As Char
' This statement generates compiler error BC30512 because Option Strict is On.
charVar = "Z"
' The following statement succeeds because it specifies a Char literal.
charVar = "Z"c
End Sub
End Module
Conseils de programmation
Nombres négatifs.
Char
est un type non signé et ne peut pas représenter une valeur négative. Dans tous les cas, vous ne devez pas utiliserChar
pour contenir des valeurs numériques.Considérations sur l'interopérabilité. Si vous utilisez des composants non écrits pour le .NET Framework, par exemple des objets Automation ou COM, n’oubliez pas que les types de caractères ont une largeur de données différente (8 bits) dans les autres environnements. Si vous passez un argument de 8 bits à un tel composant, déclarez-le en tant que type de données
Byte
et nonChar
dans votre nouveau code Visual Basic.Extension. Le type de données
Char
s’étend àString
. Cela signifie que vous pouvez convertirChar
enString
et ceci sans rencontrer de System.OverflowException.Caractères de type. L’ajout du caractère de type littéral
C
à un littéral de chaîne à caractère unique force le type de donnéesChar
.Char
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.Char.