Should I use symbolic names like TRUE and FALSE for Boolean constants, or plain 1 and 0?

Q

Should I use symbolic names like TRUE and FALSE for Boolean constants, or plain 1 and 0?

✍: Guest

A

It's your choice. Preprocessor macros like TRUE and FALSE (and, of course, NULL) are used for code readability, not because the underlying values might ever change. It's a matter of style, not correctness, whether to use symbolic names or raw 1/0 values.
On the one hand, using a symbolic name like TRUE or FALSE reminds the reader that a Boolean value is involved. On the other hand, Boolean values and definitions can evidently be confusing, and some programmers feel that TRUE and FALSE macros only compound the confusion.

2015-05-11, 1096👍, 0💬