Partage via


char (référence C#)

Le char mot clé de type est un alias pour le type de structure .NET System.Char . Il représente une unité de code UTF-16 Unicode, généralement un caractère UTF-16.

Catégorie Gamme Taille Type .NET
char U+0000 à U+FFFF 16 bits System.Char

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

Le langage C# documente la version la plus récente de la langue C#. Il contient également la documentation initiale des fonctionnalités dans les préversions publiques pour la prochaine version du langage.

La documentation identifie toute fonctionnalité introduite en premier dans les trois dernières versions de la langue ou dans les préversions publiques actuelles.

Conseil / Astuce

Pour savoir quand une fonctionnalité a été introduite en C#, consultez l’article sur l’historique des versions du langage C#.

Le char type prend en charge les opérateurs de comparaison, d’égalité, d’incrémentation et de décrémentation . Pour char les opérandes, les opérateurs logiques arithmétiques et au niveau du bit effectuent une opération sur les points de code correspondants et produisent le résultat sous forme de int valeur.

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 à l’aide de :

  • littéral de caractère.
  • séquence d’échappement Unicode, suivie \u de la représentation hexadécimale à quatre symboles d’un code de caractère.
  • séquence d’échappement hexadécimale, \x suivie de la représentation hexadécimale d’un code de caractère.
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 .

Remarque

Dans 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, tandis qu’elle \u06A n’est pas \u6A valide.

Dans une séquence d’échappement hexadécimale, vous pouvez omettre les zéros non significatifs. Autrement dit, les \x006Aséquences d’échappement et \x06A les \x6Aséquences d’échappement sont valides et correspondent au même caractère.

Transformations

Le char type se convertit implicitement en types intégraux suivants : ushort, , uintint, long, ulong, nintet nuint. Il convertit également implicitement en types numériques à virgule flottante intégrés : float, doubleet decimal. Elle se convertit explicitement en sbytetypes intégraux byte, et short en types intégraux.

Aucune conversion implicite n’existe d’autres types vers le char type. Toutefois, vous pouvez convertir explicitement n’importe quel type numérique intégral ou à virgule flottante en char.

Spécification du langage C#

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

Voir aussi