Kayıt Ol

Giriş

Şifremi Kaybettim

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Giriş

Kayıt Ol

C Programlama Dili Depolama Sınıf Belirteçleri (auto, extern, static, register)

C Programlama dilinde depolama sınıf belirteçleri bir değişkeni saklama için derleyiciye bilgi verir, değişkeni nasıl saklayacağını derleyiciye belirtir ve değişkenin yaşam döngüsünü belirler.

Syntax (Söz Dizimi):

depolama_belirteci veriTipleri degisken;

C Programlama Dilinde Depolama Sınıf Belirteç Türleri:

C Dilinde 4 farklı depolama sınıf belirteci vardır. Bunlar,

 Depolama Belirteçleri Açıklama
 auto Depolama yeri: Memory (Bellek)

İlk/varsayılan değer: Garbage (anlamsız veri) değer

extern Depolama yeri: Memory (Bellek)

İlk/varsayılan değer: Sıfır ‘0’

Kapsam: Global

Yaşam döngüsü: Ana program sonuna kadar. Değişken tanımı her yerde olabilir.

static Depolama yeri: Memory (Bellek)

İlk/varsayılan değer: Sıfır ‘0’

Kapsam: Yerel

Yaşam döngüsü: Farklı fonksiyonlarında bile değişkenin değerini korur.

register Depolama yeri: Register (yazmaç) belleği

İlk/varsayılan değer: Garbage (anlamsız veri) değer

Kapsam: Yerel

Yaşam döngüsü: Sadece bulunduğu fonksiyonun içinde.

NOT: 

  • Bir değişkene hızlı erişim için auto belirteçi yerine register belirteci kullanmak daha iyidir.
  • Çünkü, register değişkenleri, register bellekte (CPU belleği) depolanırken auto değişkenleri bellekte depolanır.
  • Sınırlı sayıda değişkenler register bellekte depolanabilir. Yani çok sık kullanılan kayıtlar için register belirteç kullanabilirsiniz. Bu sayede yazdığınız programlar daha hızlı olacaktır.

C Programlama Dilinde auto Değişkenlerin Kullanımı

Bir auto değişkeninin kapsamı sadece işlev içinde bulunan fonksiyonu kapsar. Yerel değişkene eşdeğerdir. Tüm yerel değişkenler varsayılan olarak auto değişkenidir.

Örnek 1:

Çıktı:

Örnek 1’de i değişkeni birDegerArtir() fonksiyonu içerisinde auto belirteci ile tanımlanmıştır. ‘i’ değişkeni yerel bir değişkendir ve main() fonksiyonu içerisinde ulaşılamaz.

C Programlama Dili static Değişken Kullanımı

static değişkenler farklı fonksiyon kullanımlarında değişken değerini korur ve değişmez.

Örnek 2:

Çıktı:

Örnek 2’de birDegerArtir() fonksiyonu 4 kere main() fonksiyonu tarafından çağrılmıştır ve ekrana i değişkeninin değeri 4 kere yazdırılmıştır. Bir belirteç kullanılmadığında ya da auto olarak belirtildiğinde her seferinde ‘i’ değeri 0 olacağından ekrana hep 0 yazmaktaydı. Bu örnekte ise ‘i’ değişkeni static olarak tanımlanmıştır ve bu sayede değeri korunmuştur.

C Programlama Dili extern Değişken Kullanımı

extern değişkeninin kapsamı ana program boyuncadır. extern belirteci global değişkene eşdeğerdir. extern değişkeni için C programının her yerinde extern tanımı yapılabilir.

Örnek 3:

Çıktı:

C Programlama Dili register Değişken Kullanımı

  • register değişkenleri lokal değişkenlerdir. Farklı olarak register belleğinde (CPU belleğinde) depolanırlar.
  • register değişkenleri, register belleğinde depolanacağı için normal değişkenlerden çok daha hızlı erişilir.
  • register değişkenleri için depolama alanı düşük olduğu için sadece sınırlı değişken kayıtları için kullanılabilir (16bit, 32bit veya 64 bit olabilir). Sıkça kullanılan değişkenler için önerilir (döngü sayaçları vs.).

Örnek 4:

Çıktı:

Hakkında Cem Serit


Beni Takip Et

Leave a reply