Оператор / (Visual Basic)
Обновлен: Ноябрь 2007
Делит одно число на другое и возвращает результат с плавающей запятой.
expression1 / expression2
Компоненты
expression1
Обязателен. Любое числовое выражение.expression2
Обязателен. Любое числовое выражение.
Поддерживаемые типы
Все числовые типы, в том числе беззнаковые, с плавающей запятой и Decimal.
Результат
Результатом является полное частное от деления expression1 на expression2, включая любой остаток.
Оператор \ (Visual Basic) возвращает целочисленное частное, без остатка.
Заметки
Тип данных результата зависит от типов операндов. В следующей таблице показано, как определяется тип данных результата.
Типы данных операндов |
Тип данных результата |
---|---|
Оба выражения являются целыми (SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong) |
Double |
Оба выражения имеют тип данных Decimal |
Decimal |
Оба выражения имеют тип данных Тип данных Single (Visual Basic) |
Single |
Оба выражения имеют тип данных с плавающей запятой (Тип данных Single (Visual Basic) или Тип данных Double (Visual Basic)) |
Double |
Перед выполнением деления все целочисленные числовые выражения преобразуются в тип данных Double. Если присвоить результат переменной целочисленного типа данных, Visual Basic попытается преобразовать результат из Double в этот тип. Это может вызвать исключение, если результат не умещается в этом типе. В частности, см. "Попытка деления на 0" на этой странице справки.
Если expression1 или expression2 равны Nothing, оно интерпретируется как ноль.
Попытка деления на ноль
Если значением expression2 является ноль, оператор / работает по-разному для разных типов данных операнда. В следующей таблице показаны возможные результаты.
Типы данных операндов |
Поведение в случае равенства нулю expression2 |
---|---|
С плавающей запятой (Single или Double) |
Возвращает бесконечность (PositiveInfinity или NegativeInfinity) или NaN (не число), если expression1 также является нулем |
Decimal |
Вызывает DivideByZeroException |
Целочисленное (знаковое или беззнаковое) |
Попытка преобразования обратно в целочисленный тип вызывает OverflowException, так как целые типы не принимают PositiveInfinity, NegativeInfinity и NaN |
![]() |
---|
Оператор / может быть перегружен; это означает, что класс или структура может переопределить его поведение, если операнд имеет тип соответствующего класса или структуры. Если в коде используется этот оператор для такого класса или структуры, убедитесь, что его переопределенное поведение вам понятно. Дополнительные сведения см. в разделе Процедуры операторов. |
Пример
В данном примере оператор / используется для выполнения операции деления с плавающей запятой. Результатом является частное двух операндов.
Dim resultValue As Double
resultValue = 10 / 4
resultValue = 10 / 3
Выражения в предыдущем примере возвращают значения 2,5 и 3,333333. Следует отметить, что результат всегда имеет тип числа с плавающей запятой (Double), даже если оба операнда являются целочисленными константами.
См. также
Основные понятия
Арифметические операторы в Visual Basic
Ссылки
Типы данных результатов оператора
Арифметические операторы (Visual Basic)
Порядок применения операторов в Visual Basic
Список операторов, сгруппированных по функциональному назначению