9.4.4.4 Character literals

时间:2021-05-19 09:37:34
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.