Javaのnullのように、特別な値を言語側が提供しなくても、一定の約束事(0をNULLとするなど)を決めることで対応できるのです 逆にいえば、約束事を決めておいてでも、“何もない値"を使う必要があったわけです。 「何もない」を表現する必要性とは? 値を格納する箱に名前を付けるもの、あるいは値を束縛するために必要な物が変数。 変数は基本的には何かの値とひも付いている物であり、逆に値とひも付かない変数があってもよいのでは? これこそが「null」が必要とされた理由です。 ネット検索に例えて考えてみる 極端な例でいうならば、とあるキーワードをネットで検索した場合、 キーワードに該当するサイトやページがヒットすれば検索サイトはその該当するページを一覧で返してくれますが、 もしキーワードに該当するページが無かった場合、何の反応もしないわけにはいきませんから システムエラー画面ではなく「何もなかった