'\0',這個表示空,需要消耗存儲空間的。
NULL,則表示連這個\0都沒有。
NULL,你可以近似理解為變量未賦值(定義了變量,但是未使用,變量不指向具體存儲空間,因此,理論上不消耗存儲空間),同時,它理論上不可以輸出,因為變量本身沒有內容(一些語言是可以強行將NULL輸出來,是因為它內部做了隱性類型轉換,例如就將NULL自動轉為空)。
空“”,你可以近似理解為空串(定義了變量,並且賦值為空,這個空是具有含義的,需要消耗存儲空間),可以輸出來,展示表現為空。不使用NULL可以提高索引效率,因為樹形索引結構中將NULL也視作一般數據節點。