C# Character Literal (const char)Examine character literals, which use single-quotes. Review escape sequences.
A character literal is a value. It is usually assigned to a variable of type char. Character literals in the C# language are enclosed in single-quote characters.Char
In character literals,
some values must be escaped with backslash characters. This can lead to compile-time errors if not done correctly. Care must be used.Compile-Time Error
we use character literals in the C# language. Char variables, such as those at the class level or the local variable level, are assigned to the character literal values.
Info: The literals are immutable and cannot be changed, but the variables that store those values simply denote storage locations.
Here: The const char in the program uses value semantics and cannot be reassigned. It is a named literal.constString Literal
Escaped: Character literals are escaped with the "\" character, and this is how you can represent the newline "\n".Environment.NewLine
Finally: We print the literal values to the screen with Console.WriteLine—the backslash is no longer present.Console.WriteLine
C# program that uses character literals
static char _literal5 = 'e'; // Static character literal.
const char _literal6 = '#'; // Constant character literal.
static void Main()
// Shows some example character literals.
// ... Also shows a local constant character literal.
// ... Then prints them.
char literal1 = 'A';
char literal2 = 'b';
char literal3 = '\\';
const char literal4 = '_';
It is critical to understand how char literal escapes work. This program shows some possible errors in a C# program.
And: For a newcomer to C# this program could be a challenge to debug (we need double backslashes in the literal).
C# program that shows char syntax errors
static void Main()
char backslash = '\';
Newline in constant
Too many characters in character literal
A variable (like char) denotes a storage location. This can be reassigned to different values. A character literal denotes a value, and this can never be changed in memory.
Further: A const char can only be used as a value, not a variable. It is a way of referring to a character literal by a name.
A summary. Character literals represent character values. They are a form of value representation, not a variable type—they are constants.
Character literals cannot be changed during runtime, but the variables that store them can. We must escape some literals, like newlines and the backslash.
© 2007-2019 Sam Allen. Every person is special and unique. Send bug reports to firstname.lastname@example.org.