/ 运算符 (Visual Basic)

更新:2007 年 11 月

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

expression1 / expression2

各部分说明

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

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

支持的类型

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

结果

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

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

备注

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

操作数数据类型

结果数据类型

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

Double

两个表达式都是 Decimal 数据类型

Decimal

两个表达式均为 Single 数据类型 (Visual Basic) 类型

Single

每个表达式都是浮点数据类型(Single 数据类型 (Visual Basic)Double 数据类型 (Visual Basic)

Double

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

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

试图用零作除数

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

操作数数据类型

expression2 为零时的行为

浮点(Single 或 Double)

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

Decimal

引发 DivideByZeroException

整数(有符号或无符号)

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

说明:

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

示例

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

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 中的运算符优先级

运算符(按功能列出)