A vitally important part of nearly any programming language
. While computer programs normally think in terms of particular values, sometimes you need to express the lack
of a value.
This sort of effect can be kludged via magic numbers like -1 or other arbitary values, but it's better if your language of choice does it internally, eliminating any possible ambiguity.
Some languages such as Perl give it different names, like undef. Semantically this suits better in a situation where you want to express the lack of a value, while null in a C context generally indicates a meaningless value.