整型常量
**整型常量**
[常量]
## 描述
整型常量是直接在草图中使用的数字,如 123。默认情况下,这些数字被视为 int 类型,但您可以使用 U 和 L 修饰符(见下文)进行更改。
通常,整型常量被视为基数为 10(十进制)的整数,但可以使用特定的标记符号表示其他进制数字。
| **基数** | **示例**| **标记符号** | **注释** |
| ------------- | --------- | ------------ | ------------------------ |
| 10 (十进制) | 123 | 无 | |
| 2 (二进制) | 0b1111011 | 前缀为“0b” | 有效字符为 0 和 1 |
| 8 (八进制) | 0173 | 前缀为“0” | 有效字符为 0-7 |
| 16 (十六进制) | 0x7B | 前缀为“0x” | 有效字符为 0-9、A-F、a-f |
## 十进制(基数 10)
这是您所熟悉的常识数学。没有其他前缀的常量被视为十进制格式。
示例:
```cpp
n = 101; // 与十进制 101 相同((1 * 10^2) + (0 * 10^1) + 1)
```
## 二进制(基数 2)
有效字符仅为 0 和 1。
示例:
```cpp
n = 0b101; // 与十进制 5 相同((1 * 2^2) + (0 * 2^1) + 1)
```
## 八进制(基数 8)
有效字符仅为 0 到 7。八进制值由前缀 “0”(零)指示。
示例:
```cpp
n = 0101; // 与十进制 65 相同((1 * 8^2) + (0 * 8^1) + 1)
```
注意:可能无意中在常量前包含前导零,导致编译器将常量解释为八进制,从而产生难以发现的错误。
## 十六进制(基数 16)
有效字符为 0 到 9 和字母 A 到 F;A 的值为 10,B 为 11,直到 F 为 15。十六进制值由前缀 “0x” 指示。请注意,A-F 可以是大写(A-F)或小写(a-f)。
示例:
```cpp
n = 0x101; // 与十进制 257 相同((1 * 16^2) + (0 * 16^1) + 1)
```
## 注意事项和警告
关于 U 和 L 格式化标记符号:
默认情况下,整型常量被视为 int 类型,并附带值限制。若要用另一种数据类型指定整数常量,请在其后添加:
- 'u' 或 'U' 以将常量强制为无符号数据格式。例如:33u
- 'l' 或 'L' 以将常量强制为 long 数据格式。例如:100000L
- 'ul' 或 'UL' 以将常量强制为 unsigned long 常量。例如:32767ul
页:
[1]