5 ms·
"true is a #define for 1" is bad idea. Because when `x` is, say, `2` then `if x` is not the same as `if x==true`.
by vzaliva 3y ago
"true is a #define for 1" is bad idea. Because when `x` is, say, `2` then `if x` is not the same as `if x==true`.
- BenjiWiebe 3y agoThat's just the way C is. If you want to check "truthiness" (as much as you can in C), just do 'if x'.
- trealira 3y agoSomething nice in C is that "if (x)" is always equivalent to "if (x != 0)". NULL is a macro for 0, and so is false. Boolean expressions evaluate to 0 if they don't hold. This isn't true in C++, though.