Prefix
denotes radix, default decimal:
0b
binary
0o
octal
0d
decimal
0x
hexadecimal
Suffix
denotes type, default int:
t
tiny (C char)
s
short (C short)
i
int (C int)
l
long (C long)
v
vlong (C long long)
u
unsigned, with one of above
i8 u8
8 bit (C99 int8_t)
i16 u16
16 bit (C99 int16_t)
i32 u32
32 bit (C99 int32_t)
i64 u64
64 bit (C99 int64_t)
Subexpressions involving the operators:
unary +
identity
unary -
negation
binary +
addition
binary -
suibtraction
binary *
suibtraction
binary /
quotient
binary %
remainder
binary < <= == != => ?
comparison
and integral literals of type int, are calculated at compile time (constant folding).
' .. '
''' .. '''
spans lines
dq .. dq
dqdqdq .. dqdqdq
spans lines
Prefix:
r
raw string, no escape processing
u
UCS-4 (32 bit) string
c
8 bit C null terminated C string, of
type cptr[char] = 'char const*'
Escapes:
\n \r \b \t \v \f
Newline, return, bell, tab, vertical tab, formfeed: as in C.
\uXXXX \UXXXXXXXX
ISO-10646/Unicode code point, given in hex.
For 8 bit strings, replaced with UTF-8 encoding.
Note: no \999 or \xXX escapes are supported.
,br
Note: there are no character literals.
Special concatenation forms.
Note these apply to string expressions,
not just literals; if literals are used, concatenation is
done at compile time (constant folding).
<string> <string> ...
concatenate strings.
<string> <integer> ...
append ISO-10646 code point, use UTF-8 encoding for
8 bit strings.
d
double
l
ldouble
Exponent kind:
e
power of 10
p
power of 2
Prefix denotes radix, default decimal:
x
Hexadecimal