mikroC - C Compiler for Microchip PIC microcontrollers
mikroC
making it simple...
The result of the expression is the same type as that of the two operands.
Here are several examples of implicit conversion:
2+3.1 // = 2. + 3.1 = 5.1
5/4*3. // = (5/4)*3. = 1*3. = 1.*3. = 3.0
3.*5/4 // = (3.*5)/4 = (3.*5.)/4 = 15./4 = 15./4. = 3.75
Pointer Conversions
Pointer types can be converted to other pointer types using the typecasting mecha- nism:
char *str; int *ip;
str = (char *)ip;
More generally, the cast (type*) will convert a pointer to type “pointer to type”.
page
84
In most situations, compiler will provide an automatic implicit conversion of types where needed, without any user interference. Also, you can explicitly convert an operand to another type using the prefix unary typecast operator:
(type) object
For example:
char a, b;
/* Following line will coerce a to unsigned int: */ (unsigned int) a;
/* Following line will coerce a to double, then coerce b to double automatically, resulting in double type value: */
(double) a + b; // equivalent to ((double) a) + b;
MikroElektronika: Development tools - Books - Compilers