C++: Specifiers / Literal Prefix & Suffix
Specifiers
Specifiers modify the meanings of the basic built-in types and expand them to a much larger set. There are four specifiers:
longshortsignedunsigned
The size hierarchy for floating point numbers is: float, double, and long double. “long float” is not a legal type. There are no short floating-point numbers.
When you are modifying an int with short or long, the keyword int is optional.
Literal Prefix & Suffix
Character & String Literals
| Prefix | Meaning | Type | Example |
|---|---|---|---|
| u | utf-16 | char16_t | u'x' |
| U | utf-32 | char32_t | U'x' |
| L | wide character | wchar_t | L"wide string" |
| u8 | utf-8 (string literal only) | char | u8"I'm a UTF-8 string." |
Integer Literals
| Suffix | Type | Example |
|---|---|---|
| u or U | unsigned | 12U |
| l or L | long | 12L / 12UL / 12LU |
| ll or LL | long long | 12LL / 12ULL / 12LLU |
The minus sign, e.g. in -47, is not part of the literal. It is an operator that negates the value of its (literal) operand.
Float-Point Literals
| Suffix | Type |
|---|---|
| f or F | float |
| l or L | long double |
留下评论