Заключительные замечания

Если в состав выражения входят операнды разных типов, то, если возможно, выполняется автоматическое их преобразование к единому типу, а затем выполняется оператор. Правило преобразования: результат имеет тип операнда с большей точностью представления значения, т.е. преобразование не допускает потери информации.

Для языка Basic последовательность преобразования следующая: sbyteàintegeràlongàsingleàdouble. Исключение: если один операнд имеет тип single, второй – тип long, то результат получает тип double. В случае невозможности преобразования к единому типу возникает ошибка: Type mismatchнесогласование типов.

Пример.

dim Operand1 as sbyte, Orerand2 as single, Operand3 as long, Operand4 as double

...................................................................................................................................

Operand1 + Operand2 àsingle

Operand2 + Operand3 àdouble

Operand1 + Operand3 àlong

Operand2 + Operand4 àdouble

Для языка Cсхема автоматических арифметических преобразований аналогична. Исключение: данные floatвсегда преобразуются к типу double с тем, чтобы вычисления выполнялись с максимально возможной точностью.