CII-div和mod

来源:互联网 发布:阿里云首页 编辑:程序博客网 时间:2024/05/22 17:46

C语言标准强调,如果x / y是可以表示的,那么(x / y) * y + x % y 必须等于x。当一个操作数为负数时,这种语义使得整数除法可以向零舍入,也可以向负无穷大舍入

例如,如果 -13 / 5的结果定义为-2(向零舍入),那么-13 % 5必须等于-13 - (-13 / 5) * 5 = -13 - (-2) * 5 = -3。但如果-13 / 5 定义为-3(向负无穷大舍入),那么-13 % 5的值必须是-13 - (-3) * 5 = 2。

0 0
原创粉丝点击