読み方 : からもじれつ
空文字列【empty string】ヌル文字列/null string
概要

文字列型として宣言されているが、何の文字も含まない空の状態である。これでも有効な文字列型の値として扱われ、変数への代入、比較、連結などの操作が可能である。文字数は0であるが、メモリ上に特定の形式で格納されているため、記憶領域の使用量が0なわけではない。具体的な実装方式は言語や処理系によって異なる。
C言語やC++言語では文字列をchar型などの配列で表し、末尾にヌル文字('\0')を置く規約がある。そのため、空文字列は、ヌル文字のみを要素とする要素数1の配列として表現される。文字数は0だが、終端文字を格納する領域は必要である。
プログラム上で空文字列と混同されやすい概念としてNull値があり、言語によって「null」「NULL」「nil」などと表記される。空文字列は「文字を持たない文字列型の値が存在する」状態であるのに対し、nullは「値そのものが存在しない」状態を表す特殊な値であり、両者は意味的に異なる。多くの言語ではこれらを区別して扱う必要があり、混同するとプログラムの誤動作やエラーの原因となる。一方、空文字列とnullの比較を真(true)として扱うなど、両者を意図的に同一視できる設計を採用している言語も存在する。
フォームの入力欄に何も入力されなかった場合に、その値が空文字列として保持されるかnullとして扱われるかは、開発言語やフレームワーク、データベースの設計によって異なる。データの検索や比較、入力チェックなどの処理結果に直接影響するため、対象環境の仕様を確認することが求められる。
(2026.6.30更新)