9.4.4.4 Character literals
A character literal represents a single character, and usually consists of a
character in quotes, as in ’a’.
character-literal::
’ character ’
character::
single-character
simple-escape-sequence
hexadecimal-escape-sequence
unicode-escape-sequence
single-character::
Any character except ’ (U+0027), \ (U+005C), and new-line-character
simple-escape-sequence:: one of
\’ \" \\ \0 \a \b \f \n \r \t \v
hexadecimal-escape-sequence::
\x hex-digit hex-digitopt hex-digitopt hex-digitopt
[Note: A character that follows a backslash character (\) in a character
must be one of the following characters:
’, ", \, 0, a, b, f, n, r, t, u, U, x, v. Otherwise, a compile-time error
occurs. end note]
A hexadecimal escape sequence represents a single Unicode character, with
the value formed by the hexadecimal
number following .\x..
If the value represented by a character literal is greater than U+FFFF, a
compile-time error occurs.
A Unicode character escape sequence (§9.4.1) in a character literal must
be in the range U+0000 to U+FFFF.
A simple escape sequence represents a Unicode character encoding, as
described in the table below.
C# LANGUAGE SPECIFICATION
60
Escape
sequence
Character
name
Unicode
encoding
\’ Single quote 0x0027
\" Double quote 0x0022
\\ Backslash 0x005C
\0 Null 0x0000
\a Alert 0x0007
\b Backspace 0x0008
\f Form feed 0x000C
\n New line 0x000A
\r Carriage return 0x000D
\t Horizontal tab 0x0009
\v Vertical tab 0x000B
The type of a character-literal is char.