编程语言
首页 > 编程语言> > 为什么-1/2在C中被评估为0,而在Python中为-1?

为什么-1/2在C中被评估为0,而在Python中为-1?

作者:互联网

> C:cout<< -1/2评估为0
> Python:-1/2的计算结果为-1.

为什么会这样?

解决方法:

C中的整数除法向0舍入,而在Python中,它向-infinity舍入.

在抽象中处理这些事物的人倾向于认为向负无穷大倾斜更有意义(这意味着它与数学中定义的模数函数兼容,而不是具有某种有趣意义的%).编程语言的传统是向0舍入 – 这最初不是在C中定义的(当时遵循C的例子),但最终C(和C)以这种方式定义它,复制Fortran.

标签:integer-division,python,c,python-2-x
来源: https://codeday.me/bug/20190722/1507355.html