Hi,
I have following situation (unix) :
x is a long and has value 300
y is a long and has value 50000
if (x <= y) printf("Correct.");
if (x > y) printf("Ouch.");
Now I always get "Ouch". That means the program keeps telling me that 300 is greater than 50000!
It only works again when I do
if ((int)x <=(int) y) printf("Correct.");
if ((int)x > (int)y) printf("Ouch.");
So what is wrong with the comparison operators?