位运算实现0~9从char类型到int类型的转换

发布时间 2023-09-22 20:17:42作者: wuhu12345

实现方式

rt,如果假设所得的char类型变量c是0~9之中的一个的话,通过int a; a = c ^ 48;就能将这个0~9中的某个数赋给a。

原理

三个前置已知:09的ASCII码是4857;48的二进制是110000,57的二进制是111001。
其实由这三个前置已知就基本能看出来为什么可以这样干了,上面的a = c ^ 48实际上就等价于a = c - 48。