C使用运算符

使用运算符可执行乘法 (*),除法 (/) 和余数 (%) 运算。

语法

  • 使用表达式:
    将表达式

    使用表达式 * 将表达式

    使用表达式 /cast 表达式

    使用表达式 % 将表达式

其余部分运算符 (%) 的操作数必须是整数。乘法 (*) 和除法 (/) 运算符可采用集成或浮点类型的操作数;操作数的类型可以是不同的。

使用运算符对操作数的常见的算术转换。该结果的类型是操作数的类型转换之后。

说明说明

因为使用运算符执行的转换不提供溢出或下溢条件,信息可能丢失,如果因操作的结果在操作数的类型不能表示在转换后。

C 使用运算符下述:

运算符

说明

*

乘法运算符导致其两个操作数相乘。

/

除法运算符导致第一个操作数由另一个部件。如果两个整数操作数部件,并且结果不是整数,它基于以下规则被截断:

 

  • 部门的结果除以 0 的基于 ANSI C 标准未定义。Microsoft C 编译器生成错误在编译时或运行时。

 

  • 如果两个操作数是正值或无符号,该结果被截断到 0。

 

  • 如果其中一个操作数为负数,操作的结果是否为最大的整数小于或等于代数控件或最小整数大于或等于代数控件是定义的实现。(请参见以下 Microsoft 特定部分。)

%

,当第一个操作数由第二时,将余数运算符的结果为其余部分。当该部门不精确时,以下规则确定该结果:

 

  • 如果正确的操作数为零,则结果是未定义的。

 

  • 如果两个操作数是正值或无符号,则结果是一样的。

 

  • 如果其中一个操作数为负数,并将结果不精确,结果是定义的实现。(请参见以下 Microsoft 特定部分。)

Microsoft 专用

在其中一个操作数为负数的除法,截断定向到 0。

如果任何操作为负的与其余部分运算符的除法,结果有符号和被除数 (在表达式的第一个操作数相同)。

特定于 Microsoft 的结尾

示例

如下所示的说明下面的示例使用:

int i = 10, j = 3, n;
double x = 2.0, y;

此语句使用乘法运算符:

y = x * i;

在这种情况下, x 乘以 i 为值 20.0。该结果。 二进制文件 类型。

n = i / j;

在此示例中, 10 被 3 除。该结果被截断总和接近 0,为整数值 3。

n = i % j;

, 10 被 3 除. 时,此语句分配 n 整数余数, 1。

Microsoft 专用

余数的符号的相同 (被除数的符号。例如:

50 % -6 = 2
-50 % 6 = -2

在每种情况下, 50 和 2 具有相同的符号。

特定于 Microsoft 的结尾

请参见

参考

使用运算符:*,/和%