#define TRUE !FALSE vs #define TRUE 1
<p>Putting aside the fact that since c99 the <a href="http://pubs.opengroup.org/onlinepubs/009695399/basedefs/stdbool.h.html" rel="nofollow"><code>stdbool.h</code></a> has existed, when defining macros to handle Boolean types in <code>C</code> is there any difference between the following?</p>

<pre><code>#define FALSE 0

#define TRUE 1       // Option 1 
#define TRUE !FALSE  // Option 2
</code></pre>

<p><a href="http://ideone.com/fIz152" rel="nofollow">From the live example here</a>, it doesn't seem to make a difference. Is there a technical benefit to either option? (Not including the fact that the second example would work better with c++ <code>bool</code> objects.)</p>