Algoritma ve Programlama Dünyası — C++ Veri Tipleri

Turhan Can Kargın
Kodcular
Published in
3 min readJan 13, 2022

Herkese merhabalar!! Algoritma ve programlama dünyası serisinde bir önceki bölümünde Python dilinde olan veri tiplerini öğrendik. Bu yazıdan önceki bölüm olan Algoritma ve Programlama Dünyası — Python Veri Tipleri yazısını daha okumadıysanız bu linke tıklayarak ulaşabilirsiniz.

Bir önceki bölümde Python veri tiplerini gördüğümüze göre bu bölümde C++ için veri tiplerine göz atabiliriz.

https://giphy.com/gifs/southparkgifs-3oz8xvG2EmEMJ4rS1y

C++ ve Java dillerinde pythondan farklı olarak değişkenimizi tutmak için kullanacağımız veri tipini değişkenden önce belirtmemiz gerekiyor. İlerideki örneklerde bunu daha net bir şekilde göreceğiz. C++’da temel veri tipleri tam sayı, ondalıklı sayı, işaretsiz tam sayı, string ve boolean verileri olarak sınıflandırabiliriz.

Tam Sayı Veri Tipleri:

Bu veri tipi içerisinde sayı ve rakam gibi verileri tutar. Birden fazla sayısal veri tipi vardır. Aralarındaki en önemli farklar taşıyabilecekleri sayıların sınırlarının farklı olmasıdır. Bu sebeple hafızada kapladıkları boyutlar farklı olacaktır. Aşağıdaki resimde detaylı olarak hangi veri tipi ne kadar yer kaplar ve hangi sayı aralıklarını değişken olarak alabilir bunu görebilirsiniz.

C++ Veri Tipleri

Yukarıdaki resimde de görüldüğü gibi farklı veri tipleri bazen aynı sayıyı tutabilir ama farklı alanlar kaplar. Bu durumun sağladığı bazı faydalar vardır.

Örneğin, iki program yazacaksınız ve ilk programda 1 ile 10 arasındaki sayılarla işlem yapacaksınız. İkinci programda da 1 milyon’a kadar ulaşacak sayılarla işlem yapacaksınız. Bu iki programda da aynı veri tipini kullanmak yersiz olur çünkü ilk programda gereksiz yere hafızada yer tutmuş oluyorsunuz.

  • Char → Char veri tipi bellekte 1 byte yer kaplar. İşaretsiz tam sayı niteliği taşır. Fakat içerisine girilen sayının Unicode harf karşılığını tutarlar. Bu da aslında içerisinde sadece bir harflik karakter taşıyabilmeyi sağlar.
int main()
{
char letter = 'A';
char letter_2 = '60';
// letter değişkeni arkaplanda A harfinin Unicode sayısal değerini tutar
}
  • short → short veri tipi 2 byte yer kaplar. İçerisinde -32768 ve 32767 arası sayıları tutabilir.
int main()
{
short short_number = 10;
}
  • INT → integer kelimesinin kısaltılmış halidir ve bellekte 4 byte yer tutar. Programcılar tarafından en çok kullanılan veri tipidir diyebiliriz.
int main()
{
int int_number = 21345;
}

Ondalıklı Sayı Veri Tipleri:

float ve double olmak üzere iki tane ondalıklı sayı tipi vardır. Ondalıklı veri tiplerinin bilgisayar tarafından tutulması, bilgisayar açısından daha güçtür.

  • Float → 4 byte yer kaplar ve virgülden sonra 7 haneye kadar duyarlıdır.
  • Double → 8byte yer kaplar ve virgülden sonra 15 haneye kadar duyarlıdır.
int main()
{
double double_number = 12.123456789;
}

Görüldüğü gibi eğer tutacağınız değişkenin duyarlılığı 7 veya daha az olmasını istiyorsunuz float ile tutmak çok daha mantıklıdır.

İşaretsiz Tam Sayı Veri Tipleri:

Buraya kadar öğrendiğimiz tam sayılar hep işaretliydi (signed). Tüm bu veri tiplerinin yanında aynı veri tiplerini işaretsiz de (unsigned) kullanabiliriz. Bunu adının başına unsigned koyarak yapabiliriz.

İşaretsiz tanımlanan bir veri tipinin alacağı al sınır hep 0'dır çünkü bu veri tipinde negatif değerler yoktur. Üst sınırları ise signed halindeki alt sınır ile üs sınırın mutlak değerlerinin toplamına eşittir. Tüm unsigned veri tiplerinin sınırlarını görmek için yukarıda paylaşılan resme tekrar göz atabilirsiniz.

int main()
{
unsigned int isatersiz_int = 10;
}

Yukarıda unsigned bir sayı tanımlama örneği görebilirsiniz.

String Veri Tipleri:

String veri tipi bellekte 8 byte yer kaplar. Karakterleri içinde barındıran veri tipidir. Bu özelliği char veri tipinden farklıdır ve tek bir karakter yerine uzun cümleleri içinde tutabilir. Arka planda bir dizi olarak çalışır ve içerisindeki toplam karakter sayısı kadar uzunluğa sahip bir char dizi üzerinden işimizi kolaylaştırır.

String veri tipini C++ için kullanmak istiyorsak string.h adında bir kütüphane çağırmamız gerekecektir.

#include<string.h>
int main()
{
string string_1 = "herhangi bir cumle";
}

BOOL Veri Tipi:

Boolean kelimesinin kısaltılmış halidir. Bool veri tipi bellekte 1 byte yer yaplar ve içerisinde true veya false olarak bit tabanda bir adet veri taşır. Mantıksal işlemlerde kullanılır.

int main()
{
bool condition = (1>2);
}

Yukarıdaki condition ifadesi yanlış bir ifade olduğu için condition false olarak tanımlanacaktır.

Photo by Florian Olivo on Unsplash

Bu yazıda C++ dilinde olan veri tiplerini öğrendik. Vakit ayırıp okuduğunuz için teşekkür ederim. Serinin bir sonraki bölümünde görüşmek üzere.

Kaynakça:

--

--