NULLを使う利点がCで使ってたという歴史的理由以外にあったら教えて下さい。
(ここでは、歴史的理由とはプログラムの互換性やプログラマがNULLを
nullポインタだと知っているということなどを意味します)

NULLとは何か?
ポインタのコンテキストで使えばnullポインタ。
それ以外の場所で使えば、単なる整数リテラル0。

0とは何か?
ポインタのコンテキストで使えばnullポインタ。
それ以外の場所で使えば、単なる整数リテラル0。