3.1.2 二元算术运算符(在算术运算中使用字符)
2. 在算术运算中使用字符
上一章介绍char类型的时候,我提到,虽然char类型存储的是字符而不是数字,但它是一个整数类型。它可以和其他整数类型一起参与算术运算。然而,具体如何解释char类型的值,并不是基于存储在其中的字符,而是基于它的基础值。例如,数字3包含一个Unicode值0x33(十六进制),换算成十进制值是51。数字4包含Unicode值0x34,或者十进制的52。如果像代码清单3-5那样,将3和4加到一起,会获得十六进制值0x167,即十进制的103,它等价于字母g。
代码清单3-5 将加法运算符应用于char数据类型
int n = '3' + '4'; |
输出3-4展示了代码清单3-5的结果。
输出3-4
g |
可以利用char类型的这个特点来判断两个字符相距多远。例如,字母f与字母c有3个字符的距离。为了获得这个值,可以从字母f上减去字母c,
如代码清单3-6所示。
代码清单3-6 判断两个字符之间的“距离”
int distance = 'f' - 'c'; |
输出3-5展示了代码清单3-6的结果。
输出3-5
3 |
| 回书目 上一节 下一节 |