1.1 Definition
Implicit type conversion, also known as automatic type conversion, is performed automatically by the compiler during the compilation process, without the need for the programmer to explicitly perform operations.
1.2 Type Conversion in Arithmetic Operations
1.2.1 Definition
When values of different types participate in arithmetic operations, the compiler promotes the operand of the smaller type to the larger type to avoid loss of precision.
This promotion follows a certain priority order, typically:char -> int -> float -> double.
1.2.2Example
When performing operations between int and float, int will be promoted to float.


When performing operations between int and double, int will be promoted to double.


When performing operations between char and int, char will be promoted to int.


1.3 Type Conversion in Assignment Operations
1.3.1Definition
When assigning a value of one type to a variable of another type, if the target type can accommodate the value of the source type, automatic conversion will occur.
1.3.2 Example
When assigning a value of int type to a variable of float type, int will be converted to float.


When assigning a value of double type to a variable of float type, double will be converted to float, but precision may be lost.
1.4 Type Conversion in Function Parameters and Return Values
1.4.1 Definition
When the type of a function parameter does not match the actual type of the passed argument, the compiler performs automatic conversion.
1.4.2 Example
If the function parameter is of float type, and an int type value is passed, int will be converted to float.