Okay, the curmudgeon's gotta speak. Generally used to make a null pointer clear, NULL has been simply eye candy for the value 0. NULL is often confused with NUL, which is simply eye candy for the character value of 0. In addition, NULL has been used as a scalar in logical or symbolic math expressions, again simply to mean 0.
That's the problem with semantic candy. You use it for a while and you begin to believe it is something special, when all along it's been just a mneumonic. '0' is, indeed, a special value in C, and always has been. NULL has from the beginning simply been a convenientce, and is defined as just 0; not "(void*)0", and not "const void *NULL = 0". If defined as anything but 0, it's just wrong, and code may break. Practically speaking, using NULL only as a pointer value of 0 should work no matter how it's defined. Other uses will probably break, since you may encounter a definition other than 0. Anybody want to talk about true and false? -- For information on using the Palm Developer Forums, or to unsubscribe, please see http://www.palmos.com/dev/support/forums/
