Null pointers look simple on the surface, and that’s why they’re so dangerous. As compiler optimizations, intuitive but incorrect simplifications, and platform-specific quirks have piled on, the odds of making a wrong assumption have increased, leading to the proliferation of bugs and vulnerabilities.
This article explores common misconceptions about null pointers held by many programmers, starting with simple fallacies and working our way up to the weirdest cases. Some of them will be news only to beginners, while others may lead experts down the path of meticulous fact-checking. Without further ado, let’s dive in.
Details like the fact that people can have differing opinions and perspectives, and should not speak in absolutes?
Details such as that accepting the statement “a claim which is mostly true is false” means that “a claim which is mostly false is true” must also be accepted (that one, or “a claim which is sometimes true is true” depending on what you think “not (mostly true)” means) :)