乘法运算符执行乘法 (*)、除法 (/) 和余数 (%) 运算。
语法
multiplicative-expression:
cast-expressionmultiplicative-expression * cast-expression
multiplicative-expression / cast-expression
multiplicative-expression % cast-expression
余数操作符 (%) 的操作数必须是整数。 乘法 (*) 和除法 (/) 运算符可采用整型或浮点类型操作数;操作数的类型可以是不同的。
乘法运算符对操作数执行常用算术转换。 结果的类型是转换后操作数的类型。
备注
由于在溢出或下溢条件不提供由乘法运算符执行的转换,因此,如果乘法操作的结果在转换后不能用操作数类型表示,则信息可能丢失。
C 乘法运算符的描述如下:
运算符 |
说明 |
---|---|
* |
乘法运算符使其两个操作数相乘。 |
/ |
除法运算符使第一个操作数除以第二个操作数。 如果两个整数操作数相除,结果不是整数,则根据下列规则截断它: |
|
|
|
|
|
|
% |
第一个操作数除以第二个操作数时,余数运算符的结果是余数。 如果除法不精确,则结果将由下列规则确定: |
|
|
|
|
|
|
Microsoft 专用
在其中一个操作数为负的除法中,截断的方向将是朝向 0。
如果使用余数运算符的除法中任一操作数为负,则结果与被除数(表达式中的第一个操作数)有相同的符号。
结束 Microsoft 专用
示例
如下所示的声明将用于下列示例:
int i = 10, j = 3, n;
double x = 2.0, y;
此语句使用乘法运算符:
y = x * i;
在此示例中,x 乘以 i 将得到值 20.0。 结果为 double 类型。
n = i / j;
在此示例中,10 除以 3。 结果将被截断到 0,同时产生整数值 3。
n = i % j;
当 10 除以 3 时,此语句为 n 分配整数余数 1。
Microsoft 专用
余数的符号与被除数的符号相同。 例如:
50 % -6 = 2
-50 % 6 = -2
在所有情况下,50 和 2 具有相同的符号。
结束 Microsoft 专用