C has no special type to represent logical or boolean values. It improvises by using any of the integral types char, int, short, long, unsigned, with a value of 0 representing false and any other value representing true. It is rare for logical values to be stored in variables. They are usually generated as required by comparing two numeric values. This is where the comparison operators are used, they compare two numeric values and produce a logical result.
Note that == is used in comparisons and = is used in assignments. Comparison operators are used in expressions like the ones below.
x == y i > 10 a + b != cIn the last example, all arithmetic is done before any comparison is made.
These comparisons are most frequently used to control an if statement or a for or a while loop. These will be introduced in a later chapter.