什么是空字符串
編輯在形式語言理論中,空字符串,或空字,是長度為零的xxx字符串。
形式理論
編輯從形式上看,一個字符串是一個有限的、有序的字符序列,如字母、數字或空格。空字符串是序列長度為零的特殊情況,因此字符串中沒有任何符號。只有一個空字符串,因為兩個字符串只有在它們具有不同的長度或不同的符號序列時才是不同的。在形式處理中,空字符串用ε表示,有時用Λ或λ表示。空字符串不應該與空語言?相混淆,后者是一種形式語言(即字符串集合),不包含任何字符串,甚至不包含空字符串。空字符串有幾個特性。|它的字符串長度為零。空字符串是連接操作的特征元素。所有字符串的集合形成了一個關于?和ε的自由單體,εR=ε。空字符串的反轉會產生空字符串。在無語境語法中,允許一個符號產生空字符串的生產規則被稱為ε-生產,并且該符號被稱為可空。
在編程語言中的使用
編輯在大多數編程語言中,字符串是一種數據類型。字符串通常存儲在不同的內存地址(位置)。因此,同一個字符串可以存儲在內存的兩個或多個地方。這樣一來,內存中可能有多個空字符串,這與形式理論的定義不同,因為形式理論中只有一個可能的空字符串。然而,一個字符串比較函數會表明所有這些空字符串都是彼此相等的。即使是一個長度為零的字符串也需要內存來存儲,這取決于所使用的格式。在大多數編程語言中,空字符串與空引用不同,因為空引用根本沒有指向任何字符串,甚至沒有指向空字符串。
空字符串是一個合法的字符串,大多數字符串操作應該在其上工作。一些語言以類似的方式處理以下部分或全部:空字符串、空引用、整數0、浮點數0、布爾值false、ASCII字符NUL或其他此類值。空字符串的表示方法通常與其他字符串類似。在帶有字符串結束符的實現中,空字符串通過立即使用這個結束符來表示。
空字符串的例子
編輯空字符串是零在語法上的有效表示(在任何基數中),它不包含前導零。由于空字符串在形式語言理論之外沒有標準的視覺表示,數字0在傳統上是由單一的小數位0來表示的。充滿零的內存區域,被解釋為一個空尾的字符串,就是一個空字符串。空的文本行顯示為空字符串。這可以由兩個連續的EOL發生,就像在文本文件中經常發生的那樣,這在文本處理中有時被用來分隔段落。
內容由匿名用戶提供,本內容不代表www.gelinmeiz.com立場,內容投訴舉報請聯系www.gelinmeiz.com客服。如若轉載,請注明出處:http://www.gelinmeiz.com/163876/