「NULL」と「空文字列」の違い
スポンサーリンク
予備知識
| 用語 | 意味 |
|---|---|
| 文字 | 「あ」とか「い」とかの「記号としての文字」のこと |
| 文字列 | 文字の集まり。「眠い」とか「お腹空いた」とかの「単語や文章としての文字」のこと |
それぞれの用語の意味
| 用語 | 意味 |
|---|---|
| NULL | 「何もないよー」を表す単語 |
| 空文字列 | 長さ0文字の文字列のこと |
似ているところ
どちらも「何もないよ」な状態です。
違うところ
NULLは、何もない「状態」を指す用語です。
それに対して、空文字列は長さ0の「文字列」です。
例えば、ピヨ太君が、お盆を持っていたとしましょう。

お盆の上にミカンが1つ乗っていれば「1」です。

お盆の上にミカンが3つ乗っていれば「3」です。

お盆の上にミカンが乗っていなければ「0」です。

お盆を持っていない状態がNULLです。

お盆は持っているけど、お盆の上にミカンが乗っていない状態が、空文字列です。

そんなイメージです。
あるいは
NULL:ノート自体を広げていない状態
空文字列:何も書いていないノートが広げてある状態
と考えてもかまいません。
あとは、そうですね。
「空文字列」という表現は文字列型の変数に対してのみ使います。
「NULL」という表現は、それ以外の型に対しても使います。
備考
プログラミング言語によっては、空文字列がNULL扱いされます。






