the result the operation will be 164.814 if x is defined as a float,and 164 if x is defined as an int. Note that the type casting occurs after the calculation has been performed.
There are three constructs used in C that make no sense at all when first encountered because they are not intuitive,but they greatly increase the efficiency of the compiled code and are used extensively by experienced C programmers. Here is an example [CRYPTIC.C] of their use.