Ders-1) Değişken Nedir? Değişken Tanımlamaları-Veri Tipleri nelerdir?


Değişkenler bir programlama dilinde verilerin depolanma alanlarını temsil eder. Tanımlanan her değişkene bellek bölgesinden bir alan ayrılır. Bu bellek bölgesine okuma ve yazma işlemleri ise değişken ismi üzerinden sağlanır. Genel olarak değişkenler aşağıdaki şelikde tanımlanır.

<veri tipi> <değişken adı>;

Örneğin;
int i;
Yukarıdaki örnekte bir int(sayı) veri tipinde bir değişken tanımlanmıştır. Böylelikle bellek bölgesinde bir veri saklamak ve ileride kullanmak üzere 4 byte’lık bir alan açmış bulunuyoruz. Program içinde bu bellek bölgesine erişmek için değişken ismi olan i ifadesini kullanıyoruz.

Örneğin;

int i; //i adında bellekte 4 bytelık bir bölge aç.;
i = 5; //i adının temsil ettiği bellek bölgesine 5 değerini yaz.;

  • Bir değişkene değer atama işlemi tanımlarken yapılabilir.
  • Bir değişkene değer atama işlemi yukardaki örnekte olduğu gibi program içinde herhangi bir satırda yapılabilir.
  • Bir veri tipi altında birden fazla isimle farklı değişkenler tanımlanabilir.

Bazı programlama dillerinde yerel bir değişken tanımlıyorsak bu değişkeni kullanmadan önce bir değer ataması yapmak zorundayız.

C# Nedir? C Sharp Programlama Diliyle Neler Yapılabilir?


static void Main(string[] args)
{
int sayi;
//sayi = 5;
Console.WriteLine(sayi);
Console.ReadKey();
}

Yukarıdaki kod blokunda sayi değişkenine değer atamadığınız için hata verecektir (Use of unassigned local variable ‘sayi’). Çünkü sayi değişkeni yerel bir değişkendir. Eğer //sayi = 5; açıklama satırındaki // işaretlerini siler ve bu satırı koda dâhil ederseniz hatanın ortadan kalktığını görürsünüz.
Tanımlanan yerel değişkenler sadece tanımlandıkları bloktan erişebilir. Yaşam döngüleri sadece o blok olduğu için başka bir bloktan erişilemez.

Örnek:

namespace Bilisim
{
class Program
{
 static void Main(string[] args)
  {
    { //Birinci blok
     int a = 10;
    }{
      //İkinci blok
     int a = 20;
     }
     Console.WriteLine(a); // a değişkeni bu blokta tanımlanmadığı
 için program hata verecektir.
     }
  }
}

Yukarıdaki örnekte birinci ve ikinci blokta tanımlanan “a” isimli değişkenler sadece kendi bloklarında geçerlidir. Main bloğunda kullanılmaya çalışıldığı zaman program hata verecektir.


Değişkenlerin isimleri alfabede bulunan karakterlerle veya _(alt çizgi) ile başlamalıdır. Ama ilk harf hariç diğer karakterler sayı olabilir.

Bazı programlama dilleri büyük ve küçük harf duyarlıdır. Yani Sayi, sayi ve SAYI hepsi ayrı değişken olarak algınalır.

Değişken isimleri birden fazla kelime olduğu zaman; kelimelerin arasına boşluk konmaz. Bu tür değişkenleri ya kelimeleri birleştirerek veya kelimeler arasına _(alt çizgi) karakteri koyararak isimlendiririz.

Değişkenlerin isimleri !, ?, {, ] gibi karakterler içeremez.

Programlama dili için tanımlanmış anahtar kelimelerini de değişken isimleri olarak kullanamayız.

Değişkenleri İsimlendirme Kuralları

Veri Tipleri


Değişkenler bellekte bulunan verilerdir. Bir değişkeni kullandığımız zaman odeğişkenin bellekte bulunduğu yerdeki bilgiyi kullanırız. Değer tipleri belleğin ‘stack’ bölgesinde saklanır ve veriyi direkt olarak bellek bölgesinden alırken referans tipleri bellekte ‘heap’ alanında saklanır. Yani referans tipleri içinde veri değil bellekteki ‘heap’ alanının adres bilgisini tutarlar.

Değişken Türleri

Sayısal Türler

Aşağıdaki değişken türlerinde sayısal ifadeleri tutarız. Veri tipi olarak değer tipli değişkenlerdir. Değer tipli değişkenler RAM’in stack alanında tutulduğu için sınırlarının belirtilmiş olması gerekmektedir. Değer tipli bir değişken tanımladığımızda ram de kullansakta kullanmasakta değişken türüne ait aralık kadar yer tutacağı için yanlış değişken tanımlamaları ram’i gereksiz yere kullanmamıza sebep olacaktır. Bu da bize performans kaybına neden olabilir veya memory hatası alabiliriz.

sbyte
-128 –  127 arasında tam sayı değerlerini tutar. Bellekte 1 Byte yer tutar.

short
-32768 – 32767 arasında tam sayı değerlerini tutar. Bellekte 2 Byte yer tutar.

int
-2147483648 – 2147483647 arasında tam sayı değerlerini tutar. Bellekte 4 Byte yer tutar.

long
-9223372036854775808 – 9223372036854775807 arasında tam sayı değerlerini tutar. Bellekte 8 Byte yer tutar.

byte
0 – 255 arasında tam sayı değerlerini tutar. Bellekte Byte yer tutar.

ushort
0 – 65535 arasında tam sayı değerlerini tutar. Bellekte 2 Byte yer tutar.

uint
0 – 4294967295 arasında tam sayı değerlerini tutar. Bellekte 4 Byte yer tutar.

ulong
0 – 18446744073709551615 arasında tam sayı değerlerini tutar. Bellekte 8 Byte yer tutar.

float
±1.5*10-45, …, ±3.4*1038 arasında reel sayı değerlerini tutar. Bellekte 4 Byte yer tutar.

double
±5.0*10-324, …, ±1.7*10308 arasında reel sayı değerlerini tutar. Bellekte 8 Byte yer tutar.

decimal
±1.5*10-28, …, ±7.9*1028 arasında reel sayı değerlerini tutar. Bellekte 16 Byte yer tutar.

Metinsel Türler

Metinsel türlü değişkenler char ve string olmak üzere 2 tanedir.

char
Tek karakter almaktadır. Sınırları belirli olduğu için değer tipli değişkendir.

string
Sınırsız (Belleğin kapasitesi kadar) metin türünde veri tutabiliriz. Sınırları belirli olmadığı için referans tipli değerdir.

Diğer türdeki değişkenler

bool
true ya da false şeklinde değerler alır. değer tipli değişkendir.

Object
Bütün veri tiplerinin türediği temel sınıftır. object olarak tanımladığımız bir değişkene herşeyi atayabiliriz. Örneğin: sayısal ifadeler, string ifadeleri, sınıf gb.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir