doubt on comparision operator

Home Forums C Programming doubt on comparision operator

This topic contains 2 replies, has 3 voices, and was last updated by  Shailesh Kumar Gautam 11 years ago.

  • Author
    Posts
  • #1977

    wadhwasharp
    Member

    Hithe following code is giving 1 as answer but answer should be 0 …becoz 0.7 is not grater than 0.7

    please tell me the reason

  • #3231

    will
    Member

    @drop2kumar wrote:

    Hi
    the followiing code is giving 1 as answer but answer should be 0 …becoz 0.7 is not grater than 0.7

     
    Actually you are comparing the float type variable with a value which can be any thing. It can be an integer, float or any thing else. So in that case compiler does not know about the type.
    Now if you explicitly mention the type of both the variables and then compare them the result would be according to your expectations. Hopefully this would clear your doubt.

  • #3232

    Actually when we compare, compiler checks the type.. one u declared as float and other is number.. the default one the compiler takes in decimal format as double.. So, in representation double as 8 bytes and accurate value is entered.. while float contains 4 bytes and is comparitively less accurate than double.. So, double having atleast some minute value greater than float value.. thats why its value is true and hence value is one..

You must be logged in to reply to this topic.