根據我手邊的K&R二版附錄A
如果整數除法的除術或被除數之一是負數,
那麼餘數的正負號沒有定義,
只要滿足
a = (a/b)*b + (a%b) 且 abs(a%b) < abs(b) 即可.
也就是說,以下這兩種結果都被允許,
(compiler/machine dependent)
a = -3, b = 2
(-3) = (-1)*2 + (-1) ( a/b = -1, a%b = -1 )
(-3) = (-2)*2 + (+1) ( a/b = -2, a%b = 1 )
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.120.57.250