Comparison operators
Comparison operators are binary operators that test a condition and return 1 if that condition is logically true and 0 if that condition is false.
# Notes
Objects of struct type do not compare equal automatically, and comparing them with memcmp is not reliable because the padding bytes may have any values.
Because pointer comparison works with pointers to void, the macro NULL may be defined as (void*)0 in C, although that would be invalid in C++ where void pointers do not implicitly convert to typed pointers
Care must be taken when comparing floating-point values for equality, because the results of many operations cannot be represented exactly and must be rounded. In practice, floating-point numbers are usually compared allowing for the difference of one or more units of the last place.