6.5.6 乘法运算符
乘法表达式包括:
E1 * E2E1 / E2E1 % E2
*与/的两个操作数都必须具有算术类型;%的两个操作数必须具有整数类型。若任一操作数是十进制浮点类型,则另一操作数不得是标准浮点类型、复数类型或虚数类型。
对操作数先执行通常算术转换。
E1 * E2的结果是乘积。E1 / E2的结果是商,E1 % E2的结果是余数。若第二个操作数为
0,则/和%的行为都未定义。对整数除法,
/的结果是代数商去掉小数部分,也就是朝零截断。若商
a / b可表示,则必须满足:
text
(a / b) * b + a % b == a1
否则,a / b 与 a % b 的行为都未定义。
NOTE
这里的整数除法不是向下取整,而是朝零截断。所以负数参与除法时,结果常常与一些脚本语言不同。