In C++, type casting refers to converting one data type to another. This can be necessary when performing operations involving different data types or when you need to ensure data fits into a specific type.

Mathematical operations and data types

When performing mathematical operations, the result’s data type is determined by the types of the operands. The rule is simple: the result’s data type is the larger of the two operands’ types. For example:

  • Adding a float and a double: The result will be a double since double is larger than float.

  • Adding a float and an int: The result will be a float since float is larger than integer.

  • Adding two integers: The result will be an integer.

  • Multiplying an int and a double: The result will be a double as it is larger than an integer data type.

The compiler automatically handles these conversions, ensuring that the result is stored in the appropriate type.

Implicit type casting

Implicit casting happens automatically when you assign a value to a variable of a different data type. There might or might not be data loss depending on whether a smaller data type value is being assigned to a larger data type variable or not. Let's have a look at the following example:

Create a free account to access the full course.

By signing up, you agree to Educative's Terms of Service and Privacy Policy