/ 运算符 (Visual Basic)

将两个数相除并返回以浮点数表示的结果。

expression1 / expression2

部件

  • expression1
    必选。 任何数值表达式。

  • expression2
    必选。 任何数值表达式。

支持的类型

所有数值类型,包括无符号和浮点类型以及 Decimal。

结果

结果是 expression1 除以 expression2 的完整的商,包括任何余数。

\ 运算符 (Visual Basic) 返回整数商,丢掉了余数。

备注

所得结果的数据类型取决于操作数的类型。 下表显示如何确定结果的数据类型。

操作数数据类型

结果数据类型

两个表达式都是整数数据类型(SByteByteShortUShortIntegerUIntegerLongULong

Double

一个表达式为 Single 数据类型,而另一个表达式不为 Double

Single

一个表达式为 Decimal 数据类型,而另一个表达式不为 SingleDouble

Decimal

任一表达式为 Double 数据类型

Double

执行除法之前,任何整数数值表达式都会被扩展为 Double。 如果将结果赋给整数数据类型,Visual Basic 会尝试将结果从 Double 转换成这种类型。 如果结果不适合该类型,会引发异常。 有关详细信息,请参见本帮助页上的“尝试用零作除数”。

如果 expression1 或 expression2 计算结果等于 Nothing,则将其视为零。

尝试用零作除数

如果 expression2 的计算结果等于零,则操作数数据类型不同,/ 运算符的行为也不同。 下表显示可能的行为。

操作数数据类型

expression2 为零时的行为

浮点(Single 或 Double)

如果 expression1 也为零,则返回无穷(PositiveInfinityNegativeInfinity)或 NaN(不是数字)

Decimal

引发 DivideByZeroException

整数(有符号或无符号)

尝试转换回整型将引发 OverflowException,因为整型不接受 PositiveInfinityNegativeInfinityNaN

提示

/ 运算符可以被“重载”,这意味着当操作数具有某个类或结构的类型时,该类或结构可以重新定义其行为。 如果代码在这样的类或结构上使用此运算符,那么您一定要了解其重新定义的行为。 有关更多信息,请参见 运算符过程 (Visual Basic)

示例

本示例使用 / 运算符执行浮点除法。 结果是两个操作数的商。

Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3

前面的示例中的表达式返回值 2.5 和 3.333333。 请注意,即使两个操作数都是整数常数,结果也始终为浮点类型 (Double)。

请参见

参考

/= 运算符 (Visual Basic)

\ 运算符 (Visual Basic)

运算符结果的数据类型 (Visual Basic)

算术运算符 (Visual Basic)

Visual Basic 中的运算符优先级

按功能列出的运算符 (Visual Basic)

概念

算术运算符 (Visual Basic)