C# | Literals
uint literals
Section titled “uint literals”uint literals are defined by using the suffix U or u, or by using an integral values within the range of uint:
uint ui = 5U;int literals
Section titled “int literals”int literals are defined by simply using integral values within the range of int:
int i = 5;sbyte literals
Section titled “sbyte literals”sbyte type has no literal suffix. Integer literals are implicitly converted from int:
sbyte sb = 127;decimal literals
Section titled “decimal literals”decimal literals are defined by using the suffix M or m on a real number:
decimal m = 30.5M;double literals
Section titled “double literals”double literals are defined by using the suffix D or d, or by using a real number:
double d = 30.5D;float literals
Section titled “float literals”float literals are defined by using the suffix F or f, or by using a real number:
float f = 30.5F;long literals
Section titled “long literals”long literals are defined by using the suffix L or l, or by using an integral values within the range of long:
long l = 5L;ulong literal
Section titled “ulong literal”ulong literals are defined by using the suffix UL, ul, Ul, uL, LU, lu, Lu, or lU, or by using an integral values within the range of ulong:
ulong ul = 5UL;string literals
Section titled “string literals”string literals are defined by wrapping the value with double-quotes ":
string s = "hello, this is a string literal";String literals may contain escape sequences. See String Escape Sequences
Additionally, C# supports verbatim string literals (See Verbatim Strings). These are defined by wrapping the value with double-quotes ", and prepending it with @. Escape sequences are ignored in verbatim string literals, and all whitespace characters are included:
string s = @"The path is:C:\Windows\System32";//The backslashes and newline are included in the stringchar literals
Section titled “char literals”char literals are defined by wrapping the value with single-quotes ':
char c = 'h';Character literals may contain escape sequences. See String Escape Sequences
A character literal must be exactly one character long (after all escape sequences have been evaluated). Empty character literals are not valid. The default character (returned by default(char) or new char()) is '\0', or the NULL character (not to be confused with the null literal and null references).
byte literals
Section titled “byte literals”byte type has no literal suffix. Integer literals are implicitly converted from int:
byte b = 127;short literal
Section titled “short literal”short type has no literal. Integer literals are implicitly converted from int:
short s = 127;ushort literal
Section titled “ushort literal”ushort type has no literal suffix. Integer literals are implicitly converted from int:
ushort us = 127;bool literals
Section titled “bool literals”bool literals are either true or false;
bool b = true;Syntax
Section titled “Syntax”- bool: true or false
- byte: None, integer literal implicitly converted from int
- sbyte: None, integer literal implicitly converted from int
- char: Wrap the value with single-quotes
- decimal: M or m
- double: D, d, or a real number
- float: F or f
- int: None, default for integral values within the range of int
- uint: U, u, or integral values within the range of uint
- long: L, l, or integral values within the range of long
- ulong: UL, ul, Ul, uL, LU, lu, Lu, lU, or integral values within the range of ulong
- short: None, integer literal implicitly converted from int
- ushort: None, integer literal implicitly converted from int
- string: Wrap the value with double-quotes, optionally prepended with
@ - null: The literal
null