Yazılım Bir Tutku

Tecrübe ilimden üstündür !

C# da Veri Tipleri

Tarih : 31.08.2010 03:04:11 Kategori : C# Hit : 3920

Merhaba arkadaşlar;

C# introduction konuları il makalelerimize devam ediyoruz. Bu makalemizde Veri Tiplerinden bahsedeceğiz. Değişkenleri tanımlarken her değişkenin mutlaka bir türünün olması gerekliliğini ve değişkenlerin tuttukları değerlerin türlerini veri tiplerinin belirlediğini önceki makalemizde dile getirmiştik . Önceki makaleyi okumamış olanlar içinde bu ayrıntıyı birkez daha dile getirmiş olduk :)

Veri tiplerinin doğru bir şekilde belirlenmesinin öneminide veri tiplerine geçmeden önce kavramış olmamız gerekir diye düşünüyorum. Değişkenler bilgisayarların geçici hafızalarında yani RAM lerde " variable " denilen alanlarda tutulurlar. Veri tiplerine göre oluşturduğumuz her değişken için RAM lerde farklı boyutlarda alan açılır.  Örneğin 0 ile 255 arası tam sayıları tutabilen byte türünden bir tipteki tanımlayacağımız bir değişken RAM de 8 bit lik bir alan kaplar. int türünden bir değişken içinse RAM de 32 bitlik bir alan ayrılır. Burada dikkat etmemiz gereken husus şu. Aşağıdaki tabloda veri türleri, hangi aralıklarda değerleri tuttukları ve RAM de ne kadarlık bir alan kapladıkları yer almakta. Örneğin 255 den küçük sayılar bit türünden byte türünden bir değişkede de saklayabiliriz int türünden bir değişkendede. İki türdeki tanımlamada da sonuç doğru olacaktır. Fakat birinde 8 bitlik bir alan harcarken diğerinde 32 bitlik bir alan harcamış olacağız. Bu da performans açısından hatalı bir işlem yaptığımız anlamına gelmektedir.  Şuan kullandığımız bilgisayarlarda en az 1 gb lık RAM lerin olduğu varsayılırsa bazıları için bu durum pek birşey gibi ifade etmiyor gibi görünsede bir developer olarak bizlerin mutlaka dikkate alması gereken bir konudur RAM ların doğru bir şekilde kullanılması ve performansın düşürülmemesi.

SAYISAL DEĞERE SAHİP VERİ TİPLERİ :

TİP        RAM deki alan    DEĞER ARALIĞI

byte               8 bit               0'dan  255'e kadar
sbyte             8 bit              -128'den  127'ye kadar
short             16 bit            -32,768'den  32,767'ye kadar
ushort           16 bit            0'dan  65,535'e kadar
int                   32 bit            -2,147,483,648'den 2,147,483,647'ye kadar
uint                32 bit             0'dan 4,294,967,295'e kadar
long              64 bit            -9,223,372,036,854,775,808'den 9,223,372,036,854,775,807'ye kadar
ulong            64 bit             0'dan  18,446,744,073,709,551,615'e kadar
float               32 bit              1E-45'den  3.4E+38'e kadar
double          64 bit                 5E-324'den 1.7E+308'e kadar
decimal        128 bit            1E-28'den 7.9E+28'e kadar


METİNSEL DEĞERE SAHİP VERİ TİPLERİ :

TİP          RAM deki alan   DEĞER ARALIĞI
char          16 bit
sting         20+(n/2)*4

Metinsel ifadelerde tanımladığımız char veri tipi sadece bir karakter tutabilmekte. Sting veri tipi için belirttiğimiz formül üzerinden biraz konuşacak olursak. Formülde belirtilen n tutulacak olan karakter sayısını temsil etmekte. Örneğin "Mahmut" değerine sahip olan bir string değişkeni için hesaplama yapacak olursak 20+(6/2)*4 =32 bitlik bir alan kaplamakta.

MANTIKSAL DEĞERLERE SAHİP VERİ TİPLERİ

TİP        RAM deki alan   DEĞER ARALIĞI
bool          16 bit                 true veya false

bool veri tipini daha çok net değerler için kullanmaktayız. örneğin evet veya hayır, doğru veya yanlış gibi..  Burada bilmemiz gereken ekstra bilgi bool tipinden tanımlanan bir değişkenen eğer değer verilez ise default olarak false değerini alır.


Bu makalemizde de Veri tiplerine değindik. Her zaman belirttiğim gibi faydalı olması dileyiğle. Sağlıcakla kalınız.

Takip Ediyorum

Faydalı Projeler

Yorumlar

Sizde Yorumda Bulunun

Konuya dair fikir ve sorularınızı paylaşın