>>26I am claiming the C standard leaves the exact value of NULL up to the implementation. If that version differs from the native NULL, then it would not work just as well. Either way, it is futile to define it yourself unless you're writing your own libc like
>>24 points out.
There's nothing preventing (void *)0 from being a valid address. It's rare, but I think some Windows apps use it. Thanks to Wine, I know some use the zero page at least.