19 Ocak 2015 Pazartesi

Operatörler


Operatörler, değişkenler veya sabitler üzerinde matematiksel ve karşılaştırma işlemlerini yapan simgelerdir.
Aritmetik Operatörler
Değişken veya sabitler üzerinde temel aritmetik işlemleri gerçekleyen operatörlerdir. Bunlar Tablo 3.1 de listelenmiştir.
Tablo 3.1 : Aritmetik Operatörler
OperatorAçıklamaOrnekAnlami
+toplamax+yx ve y nin toplamı
-cikarmax-yx ve y nin farkı
*carpmax*yx ve y nin çarpımı
/bolmex/yx ve y nin oranı
%artık bölmex%yx/y den kalan sayı
Atama Operatörleri
Bu operatörler bir değişkene , bir sabit eşitlemek için kullanılır.
Birleşik atama: bazı ifadelerde işlem operatörü ile atama operatörü birlikte kullanılarak, ifadeler daha kısa yazılabilir. Eğer ifade
          değişken = değişken [operatör] ifade;
şeklinde ise, daha kısa bir biçimde
          değişken [operatör]= ifade;
olarak yazılabilir. Bunlar Tablo 3.2 te listelenmiştir.
Tablo 3.2 : Atama Operatörleri
OperatorAçıklamaOrnekAnlamı
=atamax=7;x=7;
+=ekleyerek atamax+=3;x=x+3;
-=eksilterek atamax-=5;x=x-5;
*=çarparak atamax*=4;x=x*4;
/=bölerek atamax/=2;x=x/2;
%=bölüp, kalanını atamax%=9;x=x%9;
++bir arrtırmax++; veya ++x;x=x+1;
--bir azaltmax--; veya --x;x=x-1;
Karşılaştırma Operatörleri ve Mantıksal Operatörler
Sayısal değerleri veya karakterleri karşılaştırmak için kullanılır. Bunlar Tablo 3.3 de listelenmiştir.
Tablo 3.3 : Karşılaştırma Operatörleri ve Mantıksal Operatörler
OperatorAçıklamaOrnekAnlamı
>büyüktürx>yx, y den büyük mü?
<küçüktürx<yx, y den küçük mü?
==eşittirx==yx, y ye eşit mi?
>=büyük-eşittirx>=yx, y den büyük yada eşit mi?
<=küçük-eşittirx<=yx, y den küçük yada eşit mi?
!=eşit değilx!=yx, y den farklı mı?
&&mantıksal VEx>2 && x<yx 2 den büyük VE y den küçük mü?
||mantıksal VEYAx>2 || x<yx 2 den büyük VEYA y den küçük mü?
Bit Düzeyinde Işlem Yapan Operatörler
Sayısal veya karakter değişkenlerin üzerinde bit düzeyinde mantıksal işlem yapan operatörlerdir. Bunlar Tablo 3.4 te listelenmiştir.
Tablo 3.4 : Bit düzeyinde işlem yapan operatörler
OperatorAçıklamaOrnekSonucu
&ve10 & 25 (00001010 & 00011001)8 (00001000)
|veya10 | 25 (00001010 | 00011001)27 (00011011)
^özel veya10 ^ 25 (00001010 ^ 00011001)19 (00010011)
~değil~10 (00001010)245 (11110101)
>>sağa kaydırma12 >> 3 (00001100 >> 3)1 (00000001)
<<sola kaydırma12 << 3 (00001100 << 3)96 (01100000)
Program 3.1 : Aritmetik ve atama operatörlerinin kullanımı
1:  /* Aritmetik ve atama operatörlerinin kullanımı */
2:  #include <stdio.h>
3:
4:  main()
5:  {
6:     int x, y;  /* yerel değikenlerin bildirimi */
7:
8:     x = 1;   /*  x in başlangıç değeri  */
9:     y = 3;   /*  y nin başlangıç değeri */
10:
11:    printf(" x = %d ve y = %d,\n olarak veriliyor.", x, y, z);
12:
13:    x = x + y;
14:    printf("x <- x + y  atamsının sonucunda x %d dir\n", x);
15:
16:    x = 1;  /* x e tekrar 1 değeri atanıyor */
17:    x += y;
18:    printf("x += y  atamasının sonucunda x %d dir\n", x);
19:
20: return 0;
21: }
Program 3.1 x = x + y ataması ile x += y atamasın aynı anlamda olduğu gösterir. 8. ve 9. satırlarda x ve y değişkenlerine başlangıç değerleri atanmıştır. Bu değerler 11. satırda ekrana bir sonraki bölümde ayrıntılı olarak işlenecek olan printf() fonsiyonu ile ekrana yazdırılmıştır. 13. ve 17. satırdaki ifadeler ekrana yazdırıldığında sonucun değişmediği görülür.

0 Yorum:

Yorum Gönder