Why is there so much confusion surrounding null pointers?
The fact that null pointers are represented both in source code, and internally to most machines, as zero invites unwarranted assumptions. The use of a preprocessor macro (NULL) may seem to suggest that the value could change some day, or on some weird machine. 5.15: I’m confused. I just can’t understand all this null pointer stuff. A: A simple rule is, “Always use `0′ or `NULL’ for null pointers, and always cast them when they are used as arguments in function calls.” 5.