What Happens to an Arithmetic Operation with Two Different Data Types?
When two expressions with different data types are put together for an arithmetic operation, the expression with a lower rank data type will be converted automatically to higher rank data type. Usually, a data type with a larger storage size has a higher rank. A conversion from a lower rank data type to a higher rank data type is considered safe, because there is no data lose during the conversion.