Condividi tramite


char (Riferimenti per C#)

La char parola chiave type è un alias per il tipo di struttura .NET System.Char che rappresenta un'unità di codice UTF-16 Unicode, in genere un carattere UTF-16.

TIPO Intervallo Misura Tipo .NET
char Da U+0000 a U+FFFF 16 bit System.Char

Il valore predefinito del char tipo è \0, ovvero U+0000.

Il char tipo supporta operatori di confronto, uguaglianza, incremento e decremento . Inoltre, per char gli operandi, gli operatori logici aritmetici e bit per bit eseguono un'operazione sui punti di codice corrispondenti e producono il risultato come int valore.

Il tipo stringa rappresenta il testo come sequenza di char valori.

Valori letterali

È possibile specificare un char valore con:

  • valore letterale carattere.
  • una sequenza di escape Unicode, seguita \u dalla rappresentazione esadecimale a quattro simboli di un codice carattere.
  • una sequenza di escape esadecimale, seguita \x dalla rappresentazione esadecimale di un codice carattere.
var chars = new[]
{
    'j',
    '\u006A',
    '\x006A',
    (char)106,
};
Console.WriteLine(string.Join(" ", chars));  // output: j j j j

Come illustrato nell'esempio precedente, è anche possibile eseguire il cast del valore di un codice carattere nel valore corrispondente char .

Annotazioni

In una sequenza di escape Unicode è necessario specificare tutte e quattro le cifre esadecimali. Ovvero, \u006A è una sequenza di escape valida, mentre \u06A e \u6A non sono validi.

In una sequenza di escape esadecimale è possibile omettere gli zeri iniziali. Ovvero, le \x006Asequenze di escape , \x06Ae \x6A sono valide e corrispondono allo stesso carattere.

Conversioni

Il char tipo è convertibile in modo implicito nei tipi integrali seguenti: ushort, int, uintulonglong, , nint, e .nuint È anche convertibile in modo implicito nei tipi numerici a virgola mobile predefiniti: float, doublee decimal. È convertibile in modo esplicito in sbytetipi integrali , bytee short .

Non esistono conversioni implicite da altri tipi al char tipo . Tuttavia, qualsiasi tipo numerico integrale o a virgola mobile è convertibile in modo esplicito in char.

Specificazione del linguaggio C#

Per altre informazioni, vedere la sezione Tipi integrali della specifica del linguaggio C#.

Vedere anche