title: Using true and false in C
body: <p>As far as I can see there are 3 ways to use booleans in c</p>
  
  <ol>
  <li>with the bool type, from  then using true and false</li>
  <li>defining using preprocessor <code>#define FALSE 0 ... #define TRUE !(FALSE)</code></li>
  <li>Just to use constants directly, i.e. 1 and 0</li>
  </ol>
  
  <p>are there other methods I missed? What are the pros and cons of the different methods? </p>
  
  <p>I suppose the fastest would be number 3, 2 is more easily readable still (although bitwise negation will slightly add to overhead), 1 is most readable not compatible with all compilers.</p>