Оператор / (Visual Basic)

Делит одно число на другое и возвращает результат в виде числа с плавающей запятой.

Синтаксис

expression1 / expression2  

Детали

expression1
Обязательный. Произвольное числовое выражение.

expression2
Обязательный. Произвольное числовое выражение.

Поддерживаемые типы

Все числовые типы, включая типы без знака и с плавающей запятой и Decimal.

Результат

Результатом является полный кворот expression1 разделен на expression2, включая любую оставшуюся часть.

Оператор \ (Visual Basic) возвращает целочисленное значение, которое удаляет оставшуюся часть.

Замечания

Тип данных результата зависит от типов операндов. В следующей таблице показано, как определяется тип данных результата.

Типы данных Операнда Тип результирующих данных
Оба выражения являются целочисленными типами данных (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) Double
Одно выражение является одним типом данных, а другое — не двойным. Single
Одно выражение — десятичный тип данных, а другой — не один или двойный . Decimal
Любое выражение — это тип данных Double Double

Перед выполнением деления все целочисленные числовые выражения расширяются до Double. Если вы назначаете результат целочисленного типа данных, Visual Basic пытается преобразовать результат из Double этого типа. Это может вызвать исключение, если результат не соответствует этому типу. В частности, на этой странице справки см. раздел "Попытка деления по нулю".

Если expression1 или expression2 оценивается как "Ничего", он обрабатывается как ноль.

Попытка деления на ноль

Если expression2 значение равно нулю, / оператор ведет себя по-разному для разных типов данных операнда. В следующей таблице показаны возможные характеристики.

Типы данных Операнда Поведение, если expression2 равно нулю
С плавающей запятой (Single или Double) Возвращает бесконечность (PositiveInfinityили) или NegativeInfinityNaN (не число), если expression1 также равно нулю
Decimal Бросает DivideByZeroException
Целочисленный (подписанный или неподписанный) Попытка преобразования обратно в целочисленный тип вызывается OverflowException , так как целочисленные типы не могут принимать PositiveInfinity, NegativeInfinityили NaN

Примечание.

Оператор / может быть перегружен, что означает, что класс или структура могут переопределить его поведение, если операнда имеет тип этого класса или структуры. Если код использует этот оператор в таком классе или структуре, убедитесь, что вы понимаете его переопределенное поведение. Для получения дополнительной информации см. Operator Procedures.

Пример

В этом примере оператор используется / для выполнения деления с плавающей запятой. Результатом является кворот двух операндов.

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

Выражения в предыдущем примере возвращают значения 2.5 и 3.333333. Обратите внимание, что результат всегда является плавающей запятой (Double), даже если оба операнда являются целыми константами.

См. также