char (référence C#)

Le char mot clé de type est un alias pour le type de structure .NET System.Char qui représente un caractère UTF-16 Unicode.

Type Plage Taille Type .NET
char U+0000 à U+FFFF 16 bits System.Char

La valeur par défaut du char type est \0, autrement dit, U+0000.

Le char type prend en charge la comparaison, l’égalité, l’incrémentation et les opérateurs de décrémentation. En outre, pour char les opérandes, les opérateurs logiques arithmétiques et binaires effectuent une opération sur les codes de caractères correspondants et produisent le résultat du int type.

Le type de chaîne représente du texte sous la forme d’une séquence de char valeurs.

Littéraux

Vous pouvez spécifier une char valeur avec :

  • littéral de caractères.
  • séquence d’échappement Unicode, suivie \u de la représentation hexadécimale de quatre symboles d’un code de caractères.
  • séquence d’échappement hexadécimale, suivie \x de la représentation hexadécimale d’un code de caractères.
var chars = new[]
{
    'j',
    '\u006A',
    '\x006A',
    (char)106,
};
Console.WriteLine(string.Join(" ", chars));  // output: j j j j

Comme l’illustre l’exemple précédent, vous pouvez également convertir la valeur d’un code de caractère dans la valeur correspondante char .

Notes

Dans le cas d’une séquence d’échappement Unicode, vous devez spécifier les quatre chiffres hexadécimaux. Autrement dit, \u006A il s’agit d’une séquence d’échappement valide, alors qu’elle \u06A\u6A n’est pas valide.

Dans le cas d’une séquence d’échappement hexadécimale, vous pouvez omettre les zéros principaux. Autrement dit, les séquences d’échappement et \x6A les \x006A\x06Aséquences d’échappement sont valides et correspondent au même caractère.

Conversions

Le char type est implicitement convertible en types intégral suivants : ushort, int, uint, , longet ulong. Il est également implicitement convertible en types numériques intégrés à virgule flottante : float, doubleet decimal. Il est explicitement convertible en sbytetypes, byteet short intégraux.

Il n’existe aucune conversion implicite d’autres types vers le char type. Toutefois, tout type numérique intégral ou à virgule flottante est explicitement convertible en char.

spécification du langage C#

Pour plus d’informations, consultez la section Types intégral de la spécification du langage C#.

Voir aussi