Yazılımda en önemli şeylerden biri de tanımlama operatörleridir. Bu yazıda sizlerle, C# tanımlama operatörlerini ve bunların nasıl kullanılacaklarını göstereceğiz.
Operatörler, işlenenler üzerinde işlem yapmak için kullanılan sembollerdir. Operandlar, değişkenler ve / veya sabitler olabilir.
Birkaç örnekle, 2 + 3
‘te +
, toplama işlemini gerçekleştirmek için kullanılan bir operatördür, 2
ve 3
ise işlenenlerdir.
Operatörler, bir programdaki değişkenleri ve değerleri işlemek için kullanılır. C #, gerçekleştirdikleri işlemlerin türüne göre sınıflandırılan bir dizi operatörü destekler.

1.Temel Atama Operatörü
Değişkenlere değer atamak için temel atama operatörü (=) kullanılır. Örneğin,
double x;
x = 50.05;
Burada 50.05 x’e atanmıştır.
Örnek 1: Temel Atama Operatörü
using System;
namespace Operator
{
class AssignmentOperator
{
public static void Main(string[] args)
{
int numaraBir, numaraIki;
// Assigning a constant to variable
numaraBir = 10;
Console.WriteLine("İlk numara = {0}", numaraBir);
// Assigning a variable to another variable
numaraIki = numaraBir;
Console.WriteLine("İkinci numara = {0}", numaraIki);
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
İlk numara = 10
İkinci numara =10
Bu, atama operatörünün kullanımını gösteren basit bir örnektir.
Örnekte küme parantezlerinin {}
kullanıldığını fark etmiş olabilirsiniz. Bunları dize biçimlendirmesinde tartışacağız. Şimdilik, {0}
dizesini izleyen ilk değişkenle, {1}
ikinci değişkenle değiştirilir ve bu böyle devam eder.
2.Aritmetik Operatörler
Aritmetik operatörler, toplama, çıkarma, çarpma, bölme gibi aritmetik işlemleri gerçekleştirmek için kullanılır.
Örneğin,
int x = 5;
int y = 10;
int z = x + y;// z = 15
Operatör | Operatör Adı | Örnek |
+ | Toplama Operatörü | 6+3, 9 olarak değerlendirilir |
– | Çıkarma Operatörü | 10-6, 4 olarak değerlendirilir |
* | Çarpma Operatörü | 4*2, 8 olarak değerlendirilir |
/ | Bölme Operatörü | 10/2, 5 olarak değerlendirilir |
% | Kalan Operatörü | 16%3, 1 olarak değerlendirilir |
Örnek 2: Aritmetik Operatörler
using System;
namespace Operator
{
class AritmetikOperatorler
{
public static void Main(string[] args)
{
double ilkSayi = 14.40, ikinciSayi = 4.60, result;
int say1 = 26, say2 = 4, kal;
// Toplama Operatörü
result = ilkSayi + ikinciSayi;
Console.WriteLine("{0} + {1} = {2}", ilkSayi , ikinciSayi, result);
// Çıkarma Operatörü
result = ilkSayi - ikinciSayi;
Console.WriteLine("{0} - {1} = {2}", ilkSayi , ikinciSayi, result);
// Çarpma Operatörü
result = ilkSayi * ikinciSayi;
Console.WriteLine("{0} * {1} = {2}", ilkSayi , ikinciSayi, result);
// Bölme Operatörü
result = ilkSayi / ikinciSayi;
Console.WriteLine("{0} / {1} = {2}", ilkSayi , ikinciSayi, result);
// Kalan Operatörü
kal = say1 % say1;
Console.WriteLine("{0} % {1} = {2}", num1, num2, kal);
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
14.4 + 4.6 = 19
14.4 - 4.6 = 9.8
14.4 * 4.6 = 66.24
14.4 / 4.6 = 3.1304347826087
26 % 4 = 2
Yukarıdaki örnekte aritmetik işlemler gerçekleştirilmiştir. Değişkenler, ifadelerde sabitlerle değiştirilebilir. Örneğin,
sonuc = 4.5 + 2.7 ; // 7.2, sonuc değişkeninde tutulur
sonuc = ilkSayi - 3.2; // 11.2, sonuc değişkeninde tutulur
3. İlişkisel Operatörler
İlişkisel operatörler, iki işlenen arasındaki ilişkiyi kontrol etmek için kullanılır. İlişki doğruysa sonuç true
(doğru) olur, aksi takdirde false
yanlış sonuçlanır.
İlişkisel operatörler karar vermede ve döngülerde kullanılır.
Operatör | Operatör Adı | Örnek |
== | Eşit | 6==4, false değeri döndürür |
> | Büyük | 3>-2, true değeri döndürür |
< | Küçük | 5<1, false değeri döndürür |
>= | Büyük eşit | 4>=4, true değeri döndürür |
<= | Küçük eşit | 5<=3,false değeri döndürür |
!= | Eşit değil | 10!=3, true değeri döndürür |
Örnek 3: İlişkisel Operatörler
using System;
namespace Operatorler
{
class IliskiOperatorleri
{
public static void Main(string[] args)
{
bool sonuc;
int ilkSayi = 10, ikinciSayi = 20;
sonuc = (ilkSayi == ikinciSayi);
Console.WriteLine("{0} == {1} sonuç {2}",ilkSayi, ikinciSayi, sonuc);
sonuc = (ilkSayi > ikinciSayi);
Console.WriteLine("{0} > {1} sonuç {2}",ilkSayi, ikinciSayi, sonuc);
sonuc = (ilkSayi < ikinciSayi);
Console.WriteLine("{0} < {1} sonuç {2}",ilkSayi, ikinciSayi, sonuc);
sonuc = (ilkSayi >= ikinciSayi);
Console.WriteLine("{0} >= {1} sonuç {2}",ilkSayi, ikinciSayi, sonuc);
sonuc = (ilkSayi <= ikinciSayi);
Console.WriteLine("{0} <= {1} sonuç {2}",ilkSayi, ikinciSayi, sonuc);
sonuc = (ilkSayi != ikinciSayi);
Console.WriteLine("{0} != {1} sonuç {2}",ilkSayi, ikinciSayi, sonuc);
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
10 == 20 sonuç False
10 > 20 sonuç False
10 < 20 sonuç True
10 >= 20 sonuç False
10 <= 20 sonuç True
10 != 20 sonuç True
4. Mantıksal Operatörler
Mantıksal operatörler, ve
, veya
gibi mantıksal işlemleri gerçekleştirmek için kullanılır. Mantıksal operatörler, boolean ifadeleri (true
ve false
) üzerinde çalışır ve boole değerleri döndürür. Mantıksal operatörler karar vermede ve döngülerde kullanılır.
Mantıksal VE
ve VEYA
operatörleri için sonucun nasıl değerlendirildiği aşağıda açıklanmıştır.
İşlenen 1 | İşlenen 2 | VEYA(||) | VE(&&) |
true | true | true | true |
true | false | true | false |
false | true | true | false |
false | false | false | false |
Basit bir deyişle, tablo şu şekilde özetlenebilir:
- İşlenenlerden biri doğruysa,
VEYA
işleci bunu doğru olarak değerlendirecektir. - İşlenenlerden biri yanlışsa,
AND
operatörü bunu yanlış olarak değerlendirecektir.

Örnek 4: Mantıksal Operatörler
using System;
namespace Operatorler
{
class MantiksalOperatorler
{
public static void Main(string[] args)
{
bool sonuc;
int ilkSayi = 10, ikinciSayi = 20;
// VEYA operatörü
sonuc = (ilkSayi == ikinciSayi) || (ilkSayi > 5);
Console.WriteLine(sonuc);
// VE operatörü
sonuc = (ilkSayi == ikinciSayi) && (ilkSayi > 5);
Console.WriteLine(sonuc);
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
True
False
5. Tekli Operatörler
Diğer operatörlerin aksine, tekli operatörler tek bir operand üzerinde çalışır.
Operatör | Operatör Adı | Açıklama |
+ | Tekil Toplama | İşlenenin işaretini olduğu gibi bırakır |
– | Tekil çıkarma | İşlenenin işaretini tersine çevirir |
++ | Artış | Değeri 1 artırır |
— | Düşüş | Değeri 1 düşürür |
! | Mantıksal Olumsuz(Değil) | Bir boolean değerini tersine çevirir |
Örnek 5: Tekli Operatörler
using System;
namespace Operatorler
{
class TekilOperatorler
{
public static void Main(string[] args)
{
int sayi = 10, sunuc;
bool dogruYanlis = true;
sunuc = +sayi;
Console.WriteLine("+sayi = " + sunuc);
sunuc = -sayi;
Console.WriteLine("-sayi = " + sunuc);
sunuc = ++sayi;
Console.WriteLine("++sayi = " + sunuc);
sunuc = --sayi;
Console.WriteLine("--sayi = " + sunuc);
Console.WriteLine("!dogruYanlis = " + (!dogruYanlis));
}
}
}
When we run the program, the output will be:
+sayi = 10
-sayi = -10
++sayi = 11
--sayi = 10
!dogruYanlis = False
Arttırma (++)
ve azaltma (--)
operatörleri önek ve sonek olarak kullanılabilir. Önek olarak kullanılırsa değişkenin değerindeki değişiklik aynı satırda, sonek olarak kullanılırsa değişkenin değerindeki değişiklik sonraki satırda görülür. Bu, aşağıdaki örnekle netleşecektir.
Örnek 6: C # ‘ta Arttırma ve Ön Arttırma operatörleri
using System;
namespace Operatorler
{
class TekilOperatorler
{
public static void Main(string[] args)
{
int sayi = 10;
Console.WriteLine((sayi++));
Console.WriteLine((sayi));
Console.WriteLine((++sayi));
Console.WriteLine((sayi));
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
10
11
12
12
Önek ve sonek olarak ++
kullanmanın etkisini görebiliriz. İşlenenden sonra ++
kullanıldığında, değer önce değerlendirilir ve ardından 1
artırılır.
Console.WriteLine((sayi++));
11
yerine 10
yazdırır. Değer yazdırıldıktan sonra, sayı değeri 1
artırılır.
Önek olarak ++
kullanıldığında süreç tam tersidir. Değer, yazdırmadan önce artırılır. Dolayısıyla ifade
Console.WriteLine((++sayi));
ekrana 12
yazdırır.
Eksiltme operatörü (--)
için durum aynıdır.
6. Üçlü Operatör
Üçlü operatör mü? : üç işlenen üzerinde çalışır. If-then-else ifadesinin kısaltmasıdır. Üçlü operatör aşağıdaki şekilde kullanılabilir:
veri = kosul? ifade1 : ifade2;
Üçlü operatör şu şekilde çalışır:
- Koşul tarafından belirtilen ifade doğruysa, İfade1’in sonucu veri ye atanır.
- Eğer koşul sağlanmıyorsa, ifade2’in sonucu veri ye aktarılır
Örnek 7: Üçlü Operatör
using System;
namespace Operatorler
{
class UcluOperator
{
public static void Main(string[] args)
{
int sayi = 10;
string sonuc;
sonuc = (sayi % 2 == 0)? "Çift Sayıdır" : "Tek Sayıdır";
Console.WriteLine("{0} is {1}", sayi, sonuc);
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
10 Çift Sayıdır
7. Bitsel ve Bit Kaydırma Operatörleri
Operatör | Operatör Adı |
~ | Bitsel Tamamlayıcı |
& | Bitsel VE |
| | Bitsel VEYA |
^ | Bitsel Ayrıcalıklı VEYA |
<< | Bit Düzeyinde Sola Kaydırma |
>> | Bit Düzeyinde Sağa Kaydırma |
Örnek 8: Bit Yönünde ve Bit Kaydırma Operatörü
using System;
namespace Operator
{
class BitOperator
{
public static void Main(string[] args)
{
int ilkSayi = 10;
int ikinciSayi = 20;
int sonuc;
sonuc = ~ilkSayi;
Console.WriteLine("~{0} = {1}", ilkSayi, sonuc);
sonuc = ilkSayi & ikinciSayi;
Console.WriteLine("{0} & {1} = {2}", ilkSayi,ikinciSayi, sonuc);
sonuc = ilkSayi | ikinciSayi;
Console.WriteLine("{0} | {1} = {2}", ilkSayi,ikinciSayi, sonuc);
sonuc = ilkSayi ^ ikinciSayi;
Console.WriteLine("{0} ^ {1} = {2}", ilkSayi,ikinciSayi, sonuc);
sonuc = ilkSayi << 2;
Console.WriteLine("{0} << 2 = {1}", ilkSayi, sonuc);
sonuc = ilkSayi >> 2;
Console.WriteLine("{0} >> 2 = {1}", ilkSayi, sonuc);
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
~10 = -11
10 & 20 = 0
10 | 20 = 30
10 ^ 20 = 30
10 << 2 = 40
10 >> 2 = 2
8. Bileşik Atama Operatörleri
Operatör | Operatör Adı | Örnek | Eşdeğeri |
+= | Ek Atama | x += 5 | x = x + 5 |
-= | Çıkarma Ataması | x -= 5 | x = x – 5 |
*= | Çarpma Ataması | x *= 5 | x = x * 5 |
/= | Bölme Ataması | x /= 5 | x = x / 5 |
%= | Kalan Ataması | x %= 5 | x = x % 5 |
&= | Bitsel VE Ataması | x &= 5 | x = x & 5 |
|= | Bitsel VEYA Ataması | x |= 5 | x = x | 5 |
^= | Bitsel Ayrıcalıklı VEYA Ataması | x ^= 5 | x = x ^ 5 |
<<= | Sola Kaydırma Ataması | x <<= 5 | x = x << 5 |
>>= | Sağa Kaydırma Ataması | x >>= 5 | x = x >> 5 |
=> | Lambda Operatörü | x => x*x | x*x değerini döndürür |
Örnek 9: Bileşik Atama Operatörü
using System;
namespace Operator
{
class BitOperator
{
public static void Main(string[] args)
{
int sayi= 10;
sayi += 5;
Console.WriteLine(sayi);
sayi -= 3;
Console.WriteLine(sayi);
sayi *= 2;
Console.WriteLine(sayi);
sayi /= 3;
Console.WriteLine(sayi);
sayi %= 3;
Console.WriteLine(sayi);
sayi &= 10;
Console.WriteLine(sayi);
sayi |= 14;
Console.WriteLine(sayi);
sayi ^= 12;
Console.WriteLine(sayi);
sayi <<= 2;
Console.WriteLine(sayi);
sayi >>= 3;
Console.WriteLine(sayi);
}
}
}
Programı çalıştırdığımızda çıktı şöyle olacaktır:
15
12
24
8
2
2
14
2
8
1
Lambda operatörlerini bir sonraki makalemizde daha detaylı bir şekilde inceleyeceğiz