char (C#-referens)

Typnyckelordet char är ett alias för .NET-strukturtypen System.Char som representerar ett Unicode UTF-16-tecken.

Typ Intervall Storlek .NET-typ
char U+0000 till U+FFFF 16 bitar System.Char

Standardvärdet för char typen är \0, d.v.s. U+0000.

Typen char stöder jämförelse-, likhets-, inkrements- och minskningsoperatorer . För char operander utför dessutom aritmetiska och bitvis logiska operatorer en åtgärd på motsvarande teckenkoder och ger resultatet av int typen.

Strängtypen representerar text som en sekvens med char värden.

Literaler

Du kan ange ett char värde med:

  • en teckenliteral.
  • en Unicode-escape-sekvens som \u följs av en hexadecimal representation av en teckenkod med fyra symboler.
  • en hexadecimal escape-sekvens, som \x följs av den hexadecimala representationen av en teckenkod.
var chars = new[]
{
    'j',
    '\u006A',
    '\x006A',
    (char)106,
};
Console.WriteLine(string.Join(" ", chars));  // output: j j j j

Som föregående exempel visar kan du också omvandla värdet för en teckenkod till motsvarande char värde.

Kommentar

När det gäller en Unicode-escape-sekvens måste du ange alla fyra hexadecimala siffror. Det vill: \u006A är en giltig escape-sekvens, medan \u06A och \u6A inte är giltig.

När det gäller en hexadecimal escape-sekvens kan du utelämna inledande nollor. Det innebär att \x006Aescape-sekvenserna , \x06Aoch \x6A är giltiga och motsvarar samma tecken.

Omvandlingar

Typen char är implicit konvertibel till följande integraltyper : ushort, int, uint, long, och ulong. Det är också implicit konvertibelt till de inbyggda numeriska flyttalstyperna : float, doubleoch decimal. Det är explicit konvertibelt till sbyte, byteoch short integraltyper.

Det finns inga implicita konverteringar från andra typer till char typen. Alla numeriska typer av integraler eller flyttalspunkter kan dock uttryckligen konverteras till char.

Språkspecifikation för C#

Mer information finns i avsnittet Integral types (Integral types) i C#-språkspecifikationen.

Se även