将Char变量转换为整数

1 c#

为什么'8'的整数等价于56为C?我想将它转换为整数8而不是任何其他数字.

Cha*_*ion 5

你需要从中减去偏移量'0'.

int zero = (int)'0'; // 48
int eight = (int)'8'; // 56
int value = eight - zero; // 8
Run Code Online (Sandbox Code Playgroud)

  • 顺便说一下,你可以写`int value = myChar - '0';`.尽管`myChar`和`'0''都是`char`类型,但减法运算符的结果是`int`类型. (2认同)