Boş dize - Empty string

Gelen resmi dil teorisi , boş dize veya boş kelime , tektir dize uzunluğu sıfır.

biçimsel teori

Biçimsel olarak bir dize, harfler, rakamlar veya boşluklar gibi sonlu, sıralı bir karakter dizisidir . Boş dize, dizinin uzunluğunun sıfır olduğu özel durumdur, bu nedenle dizede sembol yoktur. Yalnızca bir boş dize vardır, çünkü iki dize yalnızca farklı uzunluklara veya farklı bir sembol dizisine sahipse farklıdır. Resmi işlemlerde, boş dize ε veya bazen Λ veya λ ile gösterilir .

Boş dize , hiçbir dize içermeyen, hatta boş dize bile içermeyen biçimsel bir dil (yani bir dizi dizi) olan boş dil ile karıştırılmamalıdır .

Boş dizenin birkaç özelliği vardır:

In bağlam-bağımsız gramerler , bir üretim kuralı bir verir sembolü boş dize bir ε-üretim olarak bilinir üretmek için, ve simge "null" olduğu söylenir.

Programlama dillerinde kullanın

Çoğu programlama dilinde, dizeler bir veri türüdür . Dizeler tipik olarak farklı bellek konumlarında depolanır . Bu, aynı dizenin (örneğin, boş dize) bellekte iki veya daha fazla yerde saklanabileceği anlamına gelir.

Bu şekilde, yalnızca bir olası boş dizenin olduğu biçimsel teori tanımının aksine, bellekte birden fazla boş dizi olabilir. Ancak, bir dize karşılaştırma işlevi, bu boş dizelerin hepsinin birbirine eşit olduğunu gösterir.

Sıfır uzunluğundaki bir dize bile, kullanılan biçime bağlı olarak onu saklamak için belleğe ihtiyaç duyabilir. Çoğu programlama dilinde, boş dize boş bir başvurudan (veya boş işaretçiden) farklıdır çünkü boş bir başvuru boş dizeyi bile hiçbir dizeye işaret etmez. Boş dize, çoğu dize işleminin üzerinde çalışması gereken meşru bir dizedir. Bazı diller, aşağıdakilerin bazılarını veya tamamını benzer şekillerde ele alır: boş dizeler, boş başvurular, 0 tamsayı, kayan nokta sayısı 0, Boolean değeri false , ASCII karakteri NUL veya bu tür diğer değerler.

Boş dize genellikle diğer dizelere benzer şekilde temsil edilir. Dize sonlandırma karakteri olan uygulamalarda ( boş sonlandırılmış dizeler veya düz metin satırları), boş dize, bu sonlandırma karakterinin hemen kullanımıyla belirtilir.

λ temsili Programlama dilleri
"" C , C# , C++ , Go , Haskell , Java , JavaScript , Julia , Lua , M , Objective-C (C dizesi olarak), OCaml , Perl , PHP , Python , Ruby , Scala , Standard ML , Swift , Tcl , Visual Temel .NET
'' APL , Delphi , JavaScript , Matlab , Pascal , Perl , PHP , Python , Ruby , Smalltalk , SQL
{'\0'} C , C++ , Objective-C (C dizesi olarak)
std::string() C++
""s C++ ( 2014 standardından beri )
@"" Objective-C (sabit bir NSStringnesne olarak)
[NSString string] Objective-C (yeni bir NSStringnesne olarak)
q(), qq() Perl
str() piton
%{}
%()
yakut
string.Empty C# , Visual Basic .NET
String.make 0 '-' OCaml
{} Tcl
[[]] Lua

Boş dize örnekleri

Boş dizge bir sözdizimsel olarak geçerli bir temsilidir sıfır olarak konumsal gösterimde içermez, (herhangi bir baz olarak) gelen sıfır . Boş dize, biçimsel dil kuramının dışında standart bir görsel temsile sahip olmadığından, sıfır sayısı geleneksel olarak bunun yerine tek bir ondalık basamak 0 ile temsil edilir .

Boş sonlandırılmış bir dize olarak yorumlanan sıfır doldurulmuş bellek alanı boş bir dizedir.

Boş metin satırları boş dizeyi gösterir. Bu, genellikle metin dosyalarında olduğu gibi , iki ardışık EOL'den oluşabilir ve bu, bazen , örneğin MediaWiki'de , paragrafları ayırmak için metin işlemede kullanılır .

Ayrıca bakınız

Referanslar