i decompiled some code and stumbled across an if-statement which I cannot make sense of.
if (y < '\0')
with y = 0xED.
As far as I understand, '\0' is NULL or 0x00. In my mind, it would not make sense to compare a number to a character but even if so, it would never enter the routine since it cannot be less than 0x00.
My question: Does this statement make sense? If so, in what cases would the routine be entered? Or if this statement cannot be entered, what is the reasoning behind writing the whole routine at all? Are there instances where it does make sense to compare a number to a character?
Edit: y is fixed to 0xED but it is in a memory location which can be written to via NFC. From the answers I got that the type of y is probably a signed char/int.