【发布时间】:2017-11-04 14:01:34
【问题描述】:
在 C 语言中,当我们最终要从数字字符中减去字符 0 以获得其在整数中的等效数字时,是否需要将字符类型转换为整数?
以下示例的目的是将字符 5 转换为其等效的整数。
char a = '5';
int x = a - '0';这里将字符5减去字符0得到的字符结果的十进制值将等价于字符5。
int i = (int)a; 这里字符 5 的十进制值将被分配,即使在进行类型转换之后也是如此。
那么当类型转换对其操作数没有影响时,进行类型转换有什么意义呢?
【问题讨论】:
-
"字符5减去字符0得到的字符结果的十进制值等于字符5"什么?
'5'减去字符'0'得到的值是5,而字符'5'的值是53。怎么样?
标签: c typecast-operator