D Programlama - Değişkenler
Değişken, programlarımızın değiştirebileceği bir depolama alanına verilen addan başka bir şey değildir. D'deki her değişkenin, değişkenin belleğinin boyutunu ve düzenini belirleyen belirli bir türü vardır; bu hafızada saklanabilecek değerlerin aralığı; ve değişkene uygulanabilecek işlemler kümesi.
Bir değişkenin adı harflerden, rakamlardan ve alt çizgi karakterinden oluşabilir. Bir harf veya alt çizgiyle başlamalıdır. Büyük ve küçük harfler farklıdır çünkü D büyük / küçük harfe duyarlıdır. Önceki bölümde açıklanan temel türlere bağlı olarak, aşağıdaki temel değişken türleri olacaktır -
Sr.No. | Tip ve Açıklama |
---|---|
1 | char Genellikle tek bir sekizli (bir bayt). Bu bir tamsayı türüdür. |
2 | int Makine için en doğal tam sayı boyutu. |
3 | float Tek duyarlıklı bir kayan nokta değeri. |
4 | double Çift duyarlıklı bir kayan nokta değeri. |
5 | void Türün yokluğunu temsil eder. |
D programlama dili ayrıca, sonraki bölümlerde ele alacağımız Numaralandırma, İşaretçi, Dizi, Yapı, Birlik vb. Gibi çeşitli diğer değişken türlerini tanımlamaya izin verir. Bu bölüm için sadece temel değişken türlerini inceleyelim.
D'de Değişken Tanım
Değişken tanımı, derleyiciye değişken için nerede ve ne kadar alan yaratacağını söyler. Bir değişken tanımı, bir veri türünü belirtir ve aşağıdaki gibi bu türden bir veya daha fazla değişkenin bir listesini içerir -
type variable_list;
Buraya, type char, wchar, int, float, double, bool veya herhangi bir kullanıcı tanımlı nesne vb. dahil olmak üzere geçerli bir D veri türü olmalıdır ve variable_listvirgülle ayrılmış bir veya daha fazla tanımlayıcı adından oluşabilir. Bazı geçerli beyanlar burada gösterilmektedir -
int i, j, k;
char c, ch;
float f, salary;
double d;
Çizgi int i, j, k;hem i, j ve k değişkenlerini bildirir hem de tanımlar; bu, derleyiciye int türünde i, j ve k adlı değişkenler oluşturma talimatı verir.
Değişkenler bildirimlerinde başlatılabilir (bir başlangıç değeri atanabilir). Başlatıcı bir eşittir işaretinden ve ardından aşağıdaki gibi sabit bir ifadeden oluşur:
type variable_name = value;
Örnekler
extern int d = 3, f = 5; // declaration of d and f.
int d = 3, f = 5; // definition and initializing d and f.
byte z = 22; // definition and initializes z.
char x = 'x'; // the variable x has the value 'x'.
D'de bir değişken bildirildiğinde, her zaman için manuel olarak erişilebilen 'varsayılan başlatıcısı' olarak ayarlanır. T.init nerede T türdür (ör. int.init). Tam sayı türleri için varsayılan başlatıcı 0, Booleans false için ve kayan nokta sayıları için NaN'dir.
D'de Değişken Beyanı
Değişken bildirimi, derleyiciye verilen tür ve adla tek bir değişkenin var olduğuna dair güvence sağlar, böylece derleyici, değişken hakkında tam ayrıntıya ihtiyaç duymadan daha fazla derlemeye devam eder. Değişken bildiriminin anlamı yalnızca derleme anında vardır, derleyicinin programın bağlanması sırasında gerçek değişken bildirimine ihtiyacı vardır.
Misal
Değişkenlerin programın başlangıcında bildirildiği, ancak ana işlev içinde tanımlandığı ve başlatıldığı aşağıdaki örneği deneyin -
import std.stdio;
int a = 10, b = 10;
int c;
float f;
int main () {
writeln("Value of a is : ", a);
/* variable re definition: */
int a, b;
int c;
float f;
/* Initialization */
a = 30;
b = 40;
writeln("Value of a is : ", a);
c = a + b;
writeln("Value of c is : ", c);
f = 70.0/3.0;
writeln("Value of f is : ", f);
return 0;
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
Value of a is : 10
Value of a is : 30
Value of c is : 70
Value of f is : 23.3333
D'deki Ldeğerler ve R Değerleri
D'de iki tür ifade vardır -
lvalue - Bir değer olan bir ifade, ödevin sol veya sağ tarafı olarak görünebilir.
rvalue - Bir rdeğeri olan bir ifade, atamanın sağ tarafında görünebilir ancak sol tarafında görünmeyebilir.
Değişkenler ldeğerlerdir ve bu nedenle bir atamanın sol tarafında görünebilir. Sayısal değişmez değerler r değerleridir ve bu nedenle atanmayabilir ve sol tarafta görünemez. Aşağıdaki ifade geçerlidir -
int g = 20;
Ancak aşağıdaki geçerli bir ifade değildir ve bir derleme zamanı hatası oluşturur -
10 = 20;