29 Eylül 2017 Cuma

DEĞİŞKEN VE SABİTLER
Çok az bir program önceki bölümde verdiğimiz örnek kadar basit olabilir.  Çoğu programda çıkış değerleri üretilmeden önce bir dizi hesaplamalar yapılır. Bu hesaplamalar esnasında verilerin geçici olarak saklanacağı alanların olması gerekir. C dilinde bu saklama alanlarına değişkenler denir.
Veriler program içerisinde değişken ve sabit biçimlerinde kaydedilir. Değişkenler değerleri değiştirilebilen verilerdir. Sabitler ise değişkenlerin aksine atama yapıldıktan sonra değeri değiştirilemeyen verilerdir. Değişken ve sabitler faklı boyut ve biçimde program belleğine kaydedilirler.

1) Veri Türleri


Bütün değişkenlerin ne çeşit veri tutacağını belirten bir türünün olması gerekir. Değişkenler gömülü sistemin kısıtlı belleğine kaydedilir. Bu yüzden gömülü sistemde değişken tanımlanırken gereksiz yere bellek alanı israf edilmemesi gerekir. Bu yüzden tasarımcı değişken bildirimi esnasında değişkenin türünü tayin etme konusunda hassas davranması gerekir.
C programlama dilinde üç tane temel veri türü bulunur.
  • char
  • int
  • float
Bu veri türlerin önünde  short, long, signed ve unsigned özel niteleyicileri kullanılarak  veri türlerinin türevleri oluşturulabilir.
İşaretsiz (unsigned) ön eki kullanılarak, verilerin değerlerinin sıfır ve sıfırdan büyük olması sağlanabilir. İşaretli ve işaretsiz verilerin bellekteki uzunlukları aynıdır. Fakat işaretsiz türdeki verilerin üst limiti, işaretli türündekinin iki katına eşittir.

a) Char Türü


Char türü  “0-9” ve “A-Z” gibi yazdırılabilir yada “enter,tab,yeni satır” gibi yazdırılamaz karakterlerden oluşur.
char veri türünü ve bellekteki kapladığı alanı aşağıdaki tabloda görebilirsiniz.

b) Int  türü

Tamsayıları ifade eder. int veri türünü ve bellekteki kapladığı alanı aşağıdaki tabloda görebilirsiniz.

c) Float Türü


Gerçek sayıları ifade eder. double ve float olmak iki şekilde tanımlanır. float veri türünü ve bellekteki kapladığı alanı aşağıdaki tabloda görebilirsiniz.

2) DEĞİŞKENLER

a) Değişken Bildirimi

Bir değişkenin programda kullanılabilmesi için program içerisinde bildiriminin yapılması gerekir. Değişkenin bildirimi, değişkenin türünü ve boyutunu gösteren özel amaçlı bir sözcük ve bir tanımlayıcı ile yapılır.

b) Değişken Kapsamı


Değişkenlerin programda kullanılabilmesi için programın başında bildirimlerinin yapılması gerekir. Bir değişkenin kapsamı program içerisindeki erişilebilirliğidir. Değişken program içerisinde yerel yada genel olarak tanımlanabilir.
  • Yerel Değişkenler: fonksiyon tanımlandığı zaman, fonksiyon tarafından ayrılan bellek alanıdır. Bu değişkenler sadece tanımlandığı fonksiyon içerisinde anlamlıdır ve diğer fonksiyonlar tarafından kullanılamaz. Derleyici yerel değişkeni yalnızca tanımlandığı fonksiyonun bir parçası olarak gördüğü için, farklı fonksiyonlarda aynı isme sahip yerel değişkenler tanımlanabilir.
  • Genel Değişkenler: Derleyici tarafından ayrılan bellek alanları olup, bütün fonksiyonlar tarafından kullanılabilir.

3) SABİTLER


Sabitler program boyunca değeri değiştirilemeyen nesnelerdir. Sabitler birçok durumda derleyici programın parçası gibi davranırlar ve  RAM’den ziyade ROM da saklanırlar.
X+5  atamasında “5” bir sabittir ve derleyici tarafından doğrudan toplama işlemine sokulur.
printf (“selam”); ifadesinde “selam” metni program belleğine yerleştirilir ve değeri değiştirilemez.
Programlayıcıda const özel sözcüğünü kullanıp sabit bildirimi yapabilir. Sabit bildiriminde const özel sözcüğü ile birlikte tanımlayıcı ismi, türü ve değeri belirtilmelidir.
constant  unsigned char k =80;
Bir nesneyi sabit olarak tanımlamak nesnenin kısıtlı depolama alanı bulunan RAM yerine program kodunda saklanmasını neden olur. Bu ise sınırlı RAM alanının korunmasına yardımcı olur.

a) Sayısal Sabitler

Sayısal sabitler, sayısal tabanlarını göstermek ve programı daha okunabilir hale getirmek için farklı şekillerde bildirimleri yapılabilir. Örneğin sabitleri aşağıdaki gibi bildrimlerini yapabilirz.
float türünde olan 32 sabitinin gösterimi aşağıdakilerden biri olabilir

b) Karakter Sabitleri

Karakter sabitleri “0-9” ve “A-Z”gibi yazdırılabilir yada “enter,tab,yeni satır” gibi yazdırılamaz karakterlerden oluşur. Yazdırılabilir karakter sabitleri tek tırnak içerisinde gösterilir(‘C’).  Ayrıca karakter gösterimi ters slash ile birlikte temsil edilen sekizlik veya onaltılık değerlerini yazılarak da yapılabilir.
K karakterinin sekizli gösterimi ‘\113’  , onaltılık gösterimi ‘\x4B’ dir.
Ters slash ile tırnak karakterlerinin gösteriminde ise bu karakterlerin önüne ters slash konulur. Örneğin tırnak için gösterim ‘\’, ters slash için gösterim’\\’ şeklindedir.

4) Tür Dönüştürme


Bazen programda tanımlanmış bir türün farklı türlere çevirme ihtiyacı doğabilir. Bu durumda tür dönüştürücüler kullanılarak var olan bir tür istenilen türe dönüştürülür.
Gösterimi dönüştürülecek türün parantez içerisinde yazılması ile şeklindedir.

5) Sabit ve Değişken İsimleri

Sabit Ve Değişken İsimleri verilirken bazı kurallara uyulmak zorundadır. Bunlar
  • Değişken ve sabit isimleri en fazla 32 karakterden oluşabilir. 32 karakterden uzun isimlerde ilk 32 karakter kayda alınır . Geriye kalan karakterler işleme tabi tutulmaz.
  • Değişken ve sabit isimleri alt çizgi, ingiliz alfabesinde bulunan karakterler (A-Z) veya (a-z) ,  rakamlar (0-9) içermelidir. Türkçe karakterler, özel karakter veya boşluk karakteri kullanılamaz.
  • Değişken ve sabit isimleri herhangi bir rakam ile başlayamaz. İlk karakter bir harf veya alt çizgi olmalıdır. Sonrakiler rakamlardan oluşabilir.
  • C 'nin özel sözcükleri sabit veya değişken ismi olarak kullanılamaz.



Hiç yorum yok:

Yorum Gönder

OVERLOADİNG

C/C++ Operatorlerin Aşırı Yüklenmesi (Operator Overloading) C++’ da +,-,*,!,++ gibi operatörler fonksiyonlar yazılarak bu operatörlere ...