# C++ Veri Tipleri
C++ Yorumlar (Data Types) konusunu işliyoruz.
Last updated
C++ Yorumlar (Data Types) konusunu işliyoruz.
Last updated
Program yazarken, çeşitli bilgileri saklamak için bir dizi değişkenler kullanırız. Değişkenler, değerleri bellekte saklamak için ayrılmış bellek bölümleridir. Bu nedenle, bir değişken oluşturduğunuzda hafızada yer ayırmış oluruz.
Karakterler, metinler, tamsayı, ondalıklı sayılar, boolean(true/false) gibi çeşitli veri türlerine ait bilgilerini saklamak isteyebilirsiniz. Değişkenin veri türüne bağlı olarak, işletim sistemi hafızayı ilgili boyutta ayırır.
C++ programcıya, kullanıcı tanımlı veri türlerinin yanı sıra, zengin bir çeşitlilik sunar. Aşağıdaki tabloda yedi temel C++ veri türü aşağıdaki işaretleri alarak bellekte çeşitli boyutlarda alan tahsis edilmesini sağlar.
signed
unsigned
short
long
Aşağıdaki örnekte sizeof()
metodu ile veri tiplerinin bellekte ne kadar alan kapladığını görebilirsiniz. Mevcut örnekte yeni bir satıra geçmek için endl
ve birden fazla veri eklemek için de <<
sembolü kullanılmıştır.
system("PAUSE")
komutu ile programınızın çalıştıktan sonra hemen kapanmasını engellersiniz. Aksi halde .exe dosyasını çalıştırır çalıştırmaz program kapanacaktır.
typedef()
kullanarak mevcut bir tip için yeni bir isim oluşturabilirsiniz. Aşağıdaki yazım kullanarak yeni bir tür tanımlamak için basit söz dizimi bulunmaktadır.
Örnek: int veri türünü artık elma yazarak kullanmak istiyorsak aşağıdaki gibi yeni bir adlandırma oluşturmalıyız.
Enum bir tür, isteğe bağlı bir tür adı ve türün değerleri olarak kullanılabilecek bir sıfır veya daha fazla tanımlayıcı kümesidir. Her bir sayıcı, türü numaralandırma olan bir sabittir. Her bir enum değeri bir sayı değerine karşılık gelir.
Bir enumerate oluşturmak için enum
anahtar sözcüğünün kullanımını gerektirir. Söz dizimi aşağıdaki gibidir.
Örnek: Her bir gün değeri bir sayı değerine karşılık gelmektedir.0 pazartesi olmak üzere 4 değeri cumaya gelir. ikinci satırda da gun
değeri carsamba olarak enum’a aktarılmıştır. İsteğe bağlı olarak da enuma istenilen değer verilebilir (cumartesi=8 gibi).
Bu örnekte önemli olan enum içerisinde değişkenlere değer atamadığımız için ön tanımlı olarak 0 dan başladı. Bu sebeple ekrana carsamba gününü 2 olarak yazdı. Biz bunu şu şekilde düzeltebiliriz.
İleride yazacağınız büyük programlarda koşul durumlarınız için kontrol değişkenlerini enum ile oluşturarak daha rahat bir programlama yapabilirsiniz. Örneğin if(x==1)
gibi bir ifade kullanarak bu 1 in neye karşılık geldiğini hatırlamak yerine, if(x==dogru)
ifadesini kullanarak daha okunaklı program yazmış olursunuz.
Enum içerisinde değer vermezsek, değerler 0’dan başlar ve birer birer artar.
Enum’ların varsayılan değer “int”dir.
Enumları; byte,sbyte, short,ushort, int, uint,long, ulong türlerin oluşturabiliriz.
Enum içerisine verdiğimiz değerlerde, değişken isimlendirmede dikkat edilen kurallar geçerlidir. Örneğin sayı ile başlayan veya içerisinde boşluk bulunan isimlendirmeler veremeyiz.
Tip
Bellek Boyutu
Değer Aralığı
char
1 byte
-127 – 127 yada 0 – 255
unsigned char
1 byte
0 – 255
signed char
1 byte
-127 – 127
int
4 byte
-2147483648 – 2147483647
unsigned int
4 byte
0 – 4294967295
signed int
4 byte
-2147483648 – 2147483647
short int
2 byte
-32768 – 32767
unsigned short int
Range
0 – 65,535
signed short int
Range
-32768 – 32767
long int
4 byte
-2,147,483,648 – 2,147,483,647
signed long int
4 byte
long int gibi
unsigned long int
4 byte
0 – 4,294,967,295
float
4 byte
+/- 3.4e +/- 38 (~7 digits)
double
8 byte
+/- 1.7e +/- 308 (~15 digits)
long double
8 byte
+/- 1.7e +/- 308 (~15 digits)
wchar_t
2 yada 4 byte
1 geniş karakter