Erlang - Değişkenler
Erlang'da tüm değişkenler '=' ifadesiyle bağlıdır. Tüm değişkenlerin büyük harf karakteriyle başlaması gerekir. Diğer programlama dillerinde, '=' işareti atama için kullanılır, ancak Erlang durumunda kullanılmaz. Belirtildiği gibi, değişkenler '=' ifadesi kullanılarak tanımlanır.
Erlang'da dikkat edilmesi gereken önemli bir nokta, değişkenlerin değişmez olmasıdır; bu, değişkenin değerinin değişmesi için, yok edilmesi ve yeniden oluşturulması gerektiği anlamına gelir.
Erlang'daki aşağıdaki temel değişkenler son bölümde açıklanmıştır -
Numbers- Bu, bir tamsayıyı veya bir kayan noktayı temsil etmek için kullanılır. Bir örnek 10'dur.
Boolean - Bu, doğru veya yanlış olabilen bir Boole değerini temsil eder.
Bit String- Yazılmamış bellek alanını saklamak için bir bit dizesi kullanılır. Bir örnek << 40,50 >>.
Tuple- Demet, sabit sayıda terime sahip bileşik bir veri türüdür. Bir örnek {40,50}.
Map- Harita, değişken sayıda anahtar / değer ilişkisi içeren bileşik bir veri türüdür. Haritadaki her bir anahtar / değer ilişkisi, bir ilişkilendirme çifti olarak adlandırılır. Bir örnek, {tür => kişi, yaş => 25}.
List- Liste, değişken sayıda terim içeren bileşik bir veri türüdür. Bir örnek [40,40].
Değişken Beyanlar
Bir değişkeni tanımlamanın genel sözdizimi aşağıdaki gibidir -
Sözdizimi
var-name = var-value
Nerede,
var-name - Bu, değişkenin adıdır.
var-value - Bu, değişkene bağlı değerdir.
Aşağıda, değişken bildirimine bir örnek verilmiştir -
Misal
-module(helloworld).
-export([start/0]).
start() ->
X = 40,
Y = 50,
Result = X + Y,
io:fwrite("~w",[Result]).
Yukarıdaki örnekte, 2 değişkenimiz var, biri 40 değerine bağlı X ve diğeri 50 değerine bağlı Y'dir. Sonuç olarak adlandırılan başka bir değişken, X ve Y'nin eklenmesine bağlıdır.
Yukarıdaki programın çıktısı -
Çıktı
90
Değişkenleri Adlandırma
Tartışıldığı gibi, değişken isimleri büyük harfle başlamalıdır. Küçük harflerle ifade edilen bir değişken örneğini ele alalım.
Misal
-module(helloworld).
-export([start/0]).
start() ->
X = 40,
Y = 50,
result = X + Y,
io:fwrite("~w",[Result]).
Yukarıdaki programı derlemeye çalışırsanız, aşağıdaki derleme zamanı hatasını alırsınız.
Çıktı
helloworld.erl:8: variable 'Result' is unbound
İkinci olarak, tüm değişkenler yalnızca bir kez atanabilir. Bir değişkeni birden fazla atama örneğini ele alalım.
Misal
-module(helloworld).
-export([start/0]).
start() ->
X = 40,
Y = 50,
X = 60,
io:fwrite("~w",[X]).
Yukarıdaki programı derlemeye çalışırsanız, aşağıdaki derleme zamanı hatasını alırsınız.
Çıktı
helloworld.erl:6: Warning: variable 'Y' is unused
helloworld.erl:7: Warning: no clause will ever match
helloworld.erl:7: Warning: the guard for this clause evaluates to 'false'
Değişkenleri Yazdırma
Bu bölümde, yazdırma değişkenlerinin çeşitli işlevlerinin nasıl kullanılacağını tartışacağız.
İo: fwrite işlevini kullanma
Bunun (io: fwrite) yukarıdaki programların tümünde kullanıldığını görürdünüz. fwrite işlev, programdaki değişkenlerin değerini vermek için kullanılabilen 'io' modülünün veya Erlang'ın bir parçasıdır.
Aşağıdaki örnek, fwrite ifadesiyle kullanılabilecek birkaç parametreyi daha gösterir.
Misal
-module(helloworld).
-export([start/0]).
start() ->
X = 40.00,
Y = 50.00,
io:fwrite("~f~n",[X]),
io:fwrite("~e",[Y]).
Yukarıdaki programın çıktısı -
Çıktı
40.000000
5.00000e+1
Yukarıdaki program hakkında aşağıdaki işaretlere dikkat edilmelidir.
~ - Bu karakter, çıktı için bazı biçimlendirmelerin yapılması gerektiğini sembolize eder.
~f- Argüman, [-] ddd.ddd olarak yazılan bir kayan sayıdır; burada hassasiyet, ondalık noktadan sonraki basamak sayısıdır. Varsayılan hassasiyet 6'dır ve 1'den küçük olamaz.
~n - Bu println yeni bir satıra.
~e- Argüman, [-] d.ddde + -ddd olarak yazılan bir kayan nokta olup, burada hassasiyet, yazılan basamak sayısıdır. Varsayılan hassasiyet 6'dır ve 2'den az olamaz.