Constants Numerical constants should not be coded directly.
Symbolic constants make the code easier to read.
Defining the value in one place also makes it easier to administer large programs since the constant value can be changed uniformly by changing only the define. The enumeration data type is a better way to declare variables that take on only a discrete set of values, since additional type checking is often available. At the very least, any directly-coded numerical constant must have a comment explaining the derivation of the value. There are some cases where the constants 0 and 1 may appear as themselves instead of as defines. When a value is a pointer it should be compared to NULL instead of 0.