C++'da İşleç (Operatör)
Operatörler, derleyiciye belirli matematiksel ya da mantıksal işlemleri gerçekleştirmesini söyleyen sembollerdir. C++ yerleşik operatörler bakımından zengin bir programlama dilidir.
Aritmetik Operatörler
C++ programlama dili tarafından desteklenen 7 aritmetik operatör bulunur. (Örnekte x = 10 ve y = 20 olsun)
| Operatör | Açıklama | Örnek |
+ | Toplama operatörüdür. | x + y; //30 verir |
- | Çıkarma operatörüdür. | y - x; //10 verir |
* | Çarpma operatörüdür. | x * y; //200 verir |
/ | Bölme operatörüdür. | y / x; //2 verir |
% | Mod (alma) operatörüdür. | y % x; //0 verir |
++ | Arttırma operatörüdür. Tamsayıyı 1 arttırır. | x++; //11 verir |
-- | Azaltma operatörüdür. Tamsayıyı 1 azaltır. | x--; //9 verir |
İlişkisel Operatörler
İlişkisel operatörler koşul operatörleri olarak da bilinir. Sağına ve soluna aldığı değerlerin birbirlerine göre durumunu sorgulamakta kullanılır. Koşul gerçekleşirse true, gerçekleşmezse false olur. C++ programlama dilinde 6 koşul operatörü bulunur. (Örnekte x = 10; y= 20; olsun.)
| Operatör | Açıklama | Örnek |
== | Eşitse; iki değerin eşitliğini kontrol eder. | (x == y) //false |
!= | Eşit değilse; iki değerin eşitliğini kontrol eder. | (x != y) //true |
> | Büyükse; solundaki değerin sağındaki değerden büyüklüğünü kontrol eder. | (x > y) //false |
< | Küçükse; solundaki değerin sağındaki değerden küçüklüğünü kontrol eder. | (x < y) //true |
>= | Büyük eşitse; solundaki değerin sağındaki değerden büyük yada eşitliğini kontrol eder. | (x >= y) //false |
<= | Küçük eşitse; solundaki değerin sağındaki değerden küçük yada eşitliğini kontrol eder. | (x <= y) //true |
Mantıksal Operatörler
C++ tarafından desteklenen 3 mantıksal operatör vardır. (Örnekte x = 1; ve y = 0; olsun.)
| Operatör | Açıklama | Örnek |
&& | VE; Her iki işlenen de true ise koşul doğru olur. | (x && y) //false |
|| | VEYA; İki işlenenden herhangi biri true olduğundan koşul doğru olur. | (x || y) //true |
! | DEĞİL; mantıksal durumu tersine çevirir. | !(x && y) //true |
Bitsel Operatörler
Bitsel operatör, bitler üzerinde çalışır ve bit bit işlem gerçekleştirir. &, | ve ^ doğrulu tabloları aşağıdaki gibidir;
| p | q | p & q | p | q | p ^ q |
| 0 | 0 | 0 | 0 | 0 |
| 0 | 1 | 0 | 1 | 1 |
| 1 | 1 | 1 | 1 | 0 |
| 1 | 0 | 0 | 1 | 1 |
Gelişmiş ve üst seviye programlama dillerinin tümünde bitsel işlemler için operatörler mevcuttur. Programlama'da Bit İşlemleri başlıklı içeriğimden daha detaylı bilgi edinebilirsiniz.
x = 60; ve y = 13; olduğunu varsayalım.
x = 0011 1100
y = 0000 1101
-----------------
x&y = 0000 1100
x|y = 0011 1101
x^y = 0011 0001
~x = 1100 0011
| Operatör | Açıklama | Örnek |
& | İkili VE operatörü; Her iki işlenen de de varsa, sonuca biraz kopyalar. | (x & y) 0000 1100 olan 12'yi verir. |
| | İkili VEYA operatörü; İşlenenlerden herhangi birinde varsa, biraz kopyalar. | (x | y) 0011 1101 olan 61'i verir. |
^ | İkili XOR operatörü; Bir işlenende ayarlanmışsa, ancak ikisinde birden değilse, biti kopyalar. | (x ^ y) 0011 0001 olan 49'u verir. |
~ | Binary Ones Complement operatörü teklidir ve bitleri 'çevirme' etkisine sahiptir. | (~x) imzalı bir ikili sayı nedeniyle 2'nin tümleyen formunda 1100 0011 olan -61 verir. |
<< | İkili sol kaydırma operatörü. Sol işlenenlerin değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sola taşınır. | x << 2, 1111 0000 olan 240'ı verir. |
>> | İkili sağ kaydırma operatörü. Sol işlenenlerin değeri, sağ işlenen tarafından belirtilen bit sayısı kadar sağa taşınır. | x >> 2, 0000 1111 olan 15'i verir. |
Atama Operatörleri
| Operatör | Açıklama | Örnek |
= | Sol tarafındaki işlenene sağ tarafındaki değeri atar. | x = a+b; |
+= | Ekle ve ata; sağ işleneni sol işlenene ekler ve sonucu sol işlenene atar. | x += a; //x=x+a; |
-= | Çıkar ve ata; sağ işleneni sol işlenenden çıkarır ve sonucu sol işlenene atar. | x -= a; //x=x-a; |
*= | Çarp ve ata; sağ işleneni sol işlenen ile çarpar ve sonucu sol işlenene atar. | x *= a; //x=x*a; |
/= | Böl ve ata; sol işleneni sağ işlenene böler ve sonucu sol işlenene atar. | x /= a; //x=x/a; |
%= | Mod al ve ata; sol işlenin sağ işlenenden bölümünde kalanı sol işlenene atar. | x %= a; //x=x%a; |
<<= | Sola kaydırma ve atama operatörü. | x <<= 2; //x=x<<2; |
>>= | Sağa kaydırma ve atama operatörü. | x >>= 2; //x=x>>2; |
&= | Bit düzeyinde "VE" atama operatörü. | x &= 2; //x=x&2; |
^= | Bit düzeyinde "VEYA" ve atama operatörü | x ^= 2; //x=x^2; |
|= | Bit düzeyinde "VEYA" dahil ve atama operatörü | x |= 2; //x=x|2; |
Yazar
Muhammet Şafak
Yazılım Mühendisi & Full-Stack Geliştirici. PHP, Laravel ve modern web teknolojileri üzerine yazıyor.
HakkımdaYorumlar 0
Henüz yorum yapılmamış.
İlk yorumu siz yapın!
Yorum Yaz
Yorumunuz moderasyon sonrası yayınlanacaktır.