CCS C Tip Niteleyiciler (Belirteçler)

Tip Niteleyiciler; CCS C dilinde değişkenlerin geçerlilik alanını, ömrünü ve hangi bellekte ne şekilde tutulması gerektiğini derleyiciye bildirmek için kullanılan belirteçlerdir.

CCS C dilinde kullanılan belirteçler ve açıklamaları;

  1.  auto
  2. static
  3. extern
  4. signed ve unsigned
  5. const
  6. volatile

1- auto Belirteci

auto belirteci bir değişkenin yalnızca tanımlandığı alan içerisinde geçerli olduğunu, bu alan dışına çıkıldığında bellekten silineceğini belirtmek için kullanılır. Eğer bir değişkenin başında herhangi bir yer belirleyici kullanılmamışsa, o değişken otomatik olarak auto belirteci olarak algılanır.

2- static Belirteci

static olarak tanımlanan değişken yalnızca tanımlandığı alan içinde geçerli olmasına karşın, alanın dışına çıkıldığında hafızadan silinmez ve ömrüne devam eder. Eğer tekrar tanımlandığı alan içine girilecek olursa, değişken son atandığı değeri koruduğu görülür.

Örneğin iki adet toplama fonksiyonumuz olsun, bu foksiyonları her çağırdığımızda bizim gönderdiğimiz değer ile kendi içerisindeki “localDegisken” adındaki değişkenin değerini toplayıp bize geri döndürsün. Ancak fonksiyonlar içerisindeki localDegisken adlı değişkenimizin birini static olarak tanımlayalım ve farkı görelim:

Yukarıdaki kodu çalıştırdığımızda, toplama() fonksiyonu içerisindeki localDegisken değerimiz static olarak tanımlandığı için fonksiyon çalışıp sonlandığında hafızadaki değeri tutacaktır.

toplama2() fonksiyonumuzda ise “localDegisken” auto olarak tanımlandığı için foksiyon sonlandığında değişkenimiz bir sonraki çağırma işlemine kadar hafızadan silinecektir.

3- extern Belirteci

Bu belirteç kapsam dışı derleme işlemlerinde değişkenleri erişilebilir kılmak için kullanılır. Örneğin birden fazla derlenecek dosya mevcut ise, derleyiciye bir değişkenin başka bir dosyada mevcut olduğunu bildirmek için kullanılır. Aksi taktirde, derleyici derleme hatası verebilir.

Örneğin 2 adet dosyamız olsun. Birinci dosyamızın ismi AnaProgram.c, ikinci dosyamızın ismi ekProgram.c olsun. AnaProgram.c dosyamızda ekProgram.c dosyamızdaki sayi değişkenini kullanalim;

main.c dosyamız:

anaProgram.c dosyamız:

ekProgram.c dosyamız:

Yukarıda görüldüğü üzere 3 adet dosyamız mevcut. Birincisi derlemenin yapılacağı main.c dosyamız, ikincisi anaProgram.c ve üçüncüsü ekProgram.c dosyamız. Biz ekProgram.c dosyasında tanımladığımız ve 90 olarak değer atadığımız “sayi” değişkenini anaProgram.c dosyamızda kullandık. Eğer anaProgram.c dosyamızda kullandığımız “sayi” değişkeninin başka bir dosyada tanımlandığını “extern” komutu ile derleyiciye bildirmeseydik, programımız derleme sırasında hata verecekti.

4- signed ve unsigned Belirteci

Daha önce Değişkenler yazımızda ele aldığımız bu belirteçler, değişkenlerin işaretli ya da işaretsiz sayıları tuttuğunu belirtmek için kullanıldığını açıklamıştır. Eğer sayı türünde bir değişken tanımlarken öncesinde bir şey belirtilmemişse o değişken otomatik olarak signed (işaretli) olarak derlenir. Eğer değişkeni tanımlarken başına unsigned eklenirse, değişken yalnızca işaretsiz sayıları tutacaktır.

Örnek;

5- const Belirteci

const belirteci programın çalışması boyunca asla değiştirilmeyecek değerleri tutan değişkenler için kullanılır. Proogramcılıkta bu tür değişkenlere “Sabitler” denir. Sabitler programda tanımlandığı noktada değer atanır ve bu değer asla değiştirilemez.

Örnek:

6- volatile Belirteci

volatile belirteci bir değişkenin değerinin belli bir noktada değiştirileceğini derleyiciye bildirmek için kullanılır.

Yorum Yap