Hi,
There is no compilation error...As you said
45.64e is double and hence the whole expression would be implicitly a double expression...
After the evaluation it is converted back to float..
here 45.64e is within the range of float and hence there is no compilation error.
But if the evaluated value exceeds the range of float it needs to be
explicitly casted else a compilation error..
An interesting thing in your example...
If the literal is defined as 1.0f then error occurs ..Why???
Regards
[ September 26, 2005: Message edited by: A Kumar ]