- 博客(2)
- 收藏
- 关注
原创 C语言中5/2值为2的问题
将5转为浮点型再计算,此时该5已由默认的整型(可能是int )转为double ,二进制bit 中存在小数位,故结果为2.5是理所当然的。至于2在计算机计算时有没有也转为double ,就可能涉及到计算机组成原理中的减法器了。在计算机中,所有的数值都会采用二进制补码存储,在此基础上数值分为整型和浮点型。以此可以解释为什么5/2结果是2,不存在小数位结果不可能得出小数。整型以32位为例,32bit全是0和1,不存在小数位。(double)(5/2)中,结果仍然为2。(double) 5/2中,结果为2.5。
2023-12-28 00:14:58 501 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人