Değişkenlerin ne olduğunun anlaşılması için şöyle bir örnek verilebilir; verilerimizi sıvılar olarak düşünürsek bu sıvıların belli bir kaba konulması gerekir. Buradaki kaplar da bizim değişkenlerimizdir. Bu kapları yani değişkenleri seçerken de verinin türüne uygun şekilde seçmeliyiz. Sayısal veriler için sayısal tipte değişkenler sözel değişkenler için ise sözel tipte değişkenler kullanmamız gereklidir. Eldeki verilerin yapının içinde tutulması gerekir bunun içinde C dilinde değişkenler kullanılır. C dilinde değişkenlerin kullanılmadan önce tanımlanması gerekir.
C dilindeki standart veri tipleri;
TİP
|
UZUNLUK
|
SINIR
|
Unsigned char
|
8 bit
|
0 – 255
|
Char
|
8 bit
|
-128 … 127
|
Enum
|
16 bit
|
-32768 … 32767
|
Unsigned int
|
16 bit
|
0 … 65535
|
Short int
|
16 bit
|
-32768 … 32767
|
Int
|
16 bit
|
-32768 … 32767
|
Unsigned long
|
32 bit
|
0 … 4294967295
|
Long
|
32 bit
|
-2147483648 … 2147483647
|
Float
|
32 bit
|
3,4 10-38 … 3,4 10+38
|
Double
|
64 bit
|
1,7 10-308 … 1,7 10+308
|
Long double
|
80 bit
|
3,4 10-4932 … 3,4 10+4092
|
C dilinde yukarıdaki veriler float.h ve limits.h isimli kütüphanelerde tutulur.
Örnek değişken tanımlamaları;
int sayi;
float bolum;
char karakter;
char isim[10];
unsigned int d;
long int kup;
double us;
Değişken Türleri
Statik Değişkenler
Bu tip değişkenler tanımlandığı andan itibaren bellekte gösterilirler. Statik değişken ile ayrılan bellek bölgesi ancak program bittiği zaman serbest bırakılır. bütün fonksiyonlar statiktir. Statik değişkenler tanımlandığında varsayılan olarak sıfır(0) değerini alırlar. Eğer işaretçi(pointer) ise değeri Null olur.
Dinamik Değişkenler
Bu türdeki değişkenler programın çalışması sırasında oluşturulurlar. Dinamik değişkenler için heap bellek bölgesi kullanılır. C dilinde malloc(), calloc() gibi komutlarla bu tip değişkenler oluştururlar. Dinamik değişkenler kullanıldığı an bunlar için bir heap bellek bölgesi ayrılır. Program bitmeden önce bu adres alanları serbest bırakılmalıdır aksi halde bilgisayarın belleğinde yer işgal ederler.
Lokal ve Global Değişkenler
Herhangi bir program bloğu içerisinde tanımlanan değişkenler o blok içinde geçerlidir. Blok dışında kullanılamaz yani programın bütününde geçerli değildir. Bu tür değişkenlere yerel(local) değişkenler denir.
Programın bütününde geçerli olan değişkenler ise Global değişkenler olarak adlandırılır. Programda ana fonksiyondan(main fonksiyonu) önce tanımlanır. Global olarak tanımladığımız değişkenleri programın içinde her yerde kullanabildiğimiz gibi tanımadığımız fonksiyonların içinde de aynı isimle kullanabiliriz.
Kullanım Şekilleri:
#include<…>
int a,b;
void main() {
int c,d;
…
{
int e;
}
…
}
Yukarıdaki örnekte a ve b değişkeni global değişkendir. Programda her yerden a ve b değişkenine erişilebilir. c ve d değişkeni yerel yani lokal değişkendir ve sadece main fonksiyonu içinde erişilebilir. Main dışında kullanılmaya çalışılırsa hata verir. e değişkeni ise main fonksiyonunun içinde başka bir bloğun içindedir. e değişkenine sadece o bloğun içindeyken erişilir. Main’in içinde fakat e’nin bulunduğu bloğun dışındaysak e değişkenine erişmemiz mümkün değildir.
Sabitler
Programda kullanılacak sabit değerleri belirtmek için #define belirleyicisi kullanılır. Sabitlerin programda kullanılmadan önce tanımlamaları gerekir. Sabitler diğer değişkenlerle karşılaştırılmaması için büyük harflerle isimlendirilirler. Bu zorunlu değildir ancak ilerde karşılaşılabilecek hataların önüne geçmek için kullanılan bir standarttır.
#define PI 3.14
Bir yanıt yazın