char (C#-Referenz)
Das Schlüsselwort vom Typ char
ist ein Alias für den .NET-System.Char-Strukturtyp, der ein Unicode-UTF-16-Zeichen darstellt.
Typ | Bereich | Größe | .NET-Typ |
---|---|---|---|
char |
U+0000 in U+FFFF | 16 Bit | System.Char |
Der Standardwert des char
-Typs ist \0
, d. h. U+0000.
Der char
-Typ unterstützt Vergleichs-, Gleichheits-, Inkrement- und Dekrement-Operatoren. Außerdem wird für char
-Operanden, arithmetische und bitweise logische Operatoren ein Vorgang für die entsprechenden Zeichencodes durchgeführt und ein Ergebnis des int
-Typs erzeugt.
Der string-Typ stellt Text als Sequenz von char
-Werten dar.
Literale
Sie können einen char
-Wert mit Folgendem angeben:
- einem Zeichenliteral.
- einer Escapesequenz für Unicodezeichen, d. h.
\u
gefolgt von der aus vier Symbolen bestehenden Hexadezimaldarstellung eines Zeichencodes. - einer Escapesequenz für Hexadezimalzahlen, d. h.
\x
gefolgt von der Hexadezimaldarstellung eines Zeichencodes.
var chars = new[]
{
'j',
'\u006A',
'\x006A',
(char)106,
};
Console.WriteLine(string.Join(" ", chars)); // output: j j j j
Wie das obige Beispiel zeigt, können Sie den Wert eines Zeichencodes auch in den entsprechenden char
-Wert umwandeln.
Hinweis
Im Falle einer Escapesequenz für Unicodezeichen müssen Sie alle vier Hexadezimalziffern angeben. \u006A
ist also eine gültige Escapesequenz, \u06A
und \u6A
sind hingegen nicht gültig.
Bei einer Escapesequenz für Hexadezimalzahlen können Sie die führenden Nullen weglassen. Die Escapesequenzen \x006A
, \x06A
und \x6A
sind also gültig und entsprechen demselben Zeichen.
Konvertierungen
Der char
-Typ kann implizit in die folgenden ganzzahligen Typen konvertiert werden: ushort
, int
, uint
, long
und ulong
. Zudem lässt er sich auch implizit in diese integrierten numerischen Gleitkommatypen konvertieren: float
, double
und decimal
. Er kann explizit in die ganzzahligen Typen sbyte
, byte
und short
konvertiert werden.
Es gibt keine impliziten Konvertierungen anderen Typen in Typ char
. Alle ganzzahligen numerischen Typen oder numerischen Gleitkommatypen lassen sich jedoch explizit in char
konvertieren.
C#-Sprachspezifikation
Weitere Informationen finden Sie im Abschnitt Integrale Typen der C#-Sprachspezifikation.