nullと空文字の違い

nullと空文字の違い
nullという言葉は何もないという意味があり、主にプログラミング語源として用いられPC関連では「何も表示されない」という意味になります。

C言語のヌルポインタというのがあり、これが無効アドレス値を示す値となっており、例えばANSI-Cではlong値の0になります。

nullはJavaとは違ってきて、単なるマクロ定義になってきます。そしてこのマクロ定義が処理系よりばらばらになるため、他の実装系では違う意味になります。

そして、C言語で表現したい場合は、nullでは0を使います。0は任意の型のヌルポインタに変換される事が保証されているので、 どんなnullマクロよりも安全です。

空文字もプログラミング用語の一つで空文字とはほとんどの型に代入することがで出来て値そのものが存在しない事を示すのが空の文字です。

プログラム内で変数に何も値が入力されていない状態やまたそのコードの事を意味したりします。そして、空文字が文字の場合ヌル文字と呼んでいて、その文字列中に導入する事ができて、また削除する事ができる文字の事を指します。

これらの長さの文字例は「””」「’’」といったものを表示させるため用いたりヌル文字独特な表記法を使用し、表記される事が多いです。

よく間違えたりしますがヌル文字と空文字は別物になり、決定的な基準はヌル文字は存在しない文字になって、空文字は存在する文字という事になります。

空文字の存在する文字という意味は、代数演算の対象として整合的に扱えるという意味合いになりますが、このままでは意味合いがよくわからないのですね。

例えば、自分が食事をしたのを忘れたのか、自分が食事を本当に出来てなかったのかつまり「食べたか食べなかったか」というのを区別するために、ヌル文字か空文字で区別するのがプログラミングの言語となってきます。

そうすれば、両方とも空文字にならず存在しないか、存在するかという区別がわかりやすく、ヌル文字と空文字の違いが理解できるとお思います。