I have written a program in C and when I compare the same values of a float and a string that is converted into float using function atof results in NOT EQUAL .
    #include<stdio.h>
    main(){
            char str[10] = "54.23" ;
            float val = 54.23 ;
            if( atof(str) == val )
                 printf("\nconverted correctly");
            else
                 printf("\nThen What is the use of atof\n ");
       }
This Program is showing output : "Then What is the use of atof" Please tell me why this anonymous behavior is shown by this program ?
 
     
     
    