[Döküman3]C'de Operatörler
-
Programlama yaparken yapacağımız işlemlerde bazı operatörler kullanacağız, toplama çıkarma gibi... Bunları 5e ayırabiliriz.
1)Aritmetik operatörler
2)Karşılaştırma operatörleri
3)Mantıksal operatörler
4)Bit düzeyinde işlem yapan operatörler
5)Diğer operatörler-----Aritmetik operatörler
+ Toplama
- Çıkarma
* Çarpma
/ Bölme
% Mod işlemi (kalanı verir)
-- Bir azaltma
++ Bir arttırma
Aritmetik operatörler aynen matematikte kullanıldığı gibidirler,ancak son ikisi sadece değişkenlerde kullanılırlar ve genelde döngülerde kullanılırlar.
-----Karşılaştırma operatörleri
> Büyüktür
< Küçüktür
>= Büyük eşittir
<= Küçük eşittir
== Eşittir
!= Eşit değildir
Karşılaştırma operatörleri bunlardır. Bunları kullanırken dikkat etmeniz gereken sırasıyla yazmaktır,mesela "=<" şeklinde yazmak yanlıştır ve program hata verir. Aynı şekilde eşitliği belirtmek için == yazmalısınız, = yazmak değer atamak için kullanılır eşitlik belirtmez ve hata yapmanıza sebep olur.
-----Mantıksal operatörler
&& Ve
|| Veya
! Değil
örnekler;
if(a=0 && b=1) a=0 ve b=1 olması durumunda istenilenler yapılır
if(a=0 || b=1) a=0 ya da b=1 ise,ve ya iki değişkende istenilen değerlerdeyse istenilenler yapılır
-----Bit düzeyinde işlem yapan operatörler
& Ve (AND)
| Veya (OR)
^ Yada (XOR)
~ 1'e tümleme
<< Sola öteleme
>> Sağa öteleme
Bu operatörler direk değişkenin değeri değilde değişkenin bitleri üzerinde değişiklik yapmaya yarıyormuş,yani işin assembly kısmı için kullanılıyor daha çok. Bunlarla ilgili benimde pek fazla bi bilgim yok,pek bi açıklamada görmedim bunlarla ilgili.
-----Diğer operatörler
1) Atama operatörleri
+= Toplayarak atama ÖRNEK: Toplam += Sayi //Yani Toplam = Toplam + Sayi
-= Çıkartarak atama ÖRNEK: Toplam -= Sayi // Toplam = Toplam - Sayi
*= Çarparak atama
/= Bölerek atama
%= Bölüp, kalanı atama
<<= Sola kaydırarak atama
>>= Sağa kaydırarak atama
&=
|=
^=
=~
Bunlar atama operatörleridir. ilk 5 tanesi gördüğünüz gibi yazılan kodu azaltmak için kullanılırlar. Son 4ü ise bit düzeyindeki işlemleri yaparak atama işlemlerini gerçekleştirirler.
2) Karşılaştırma operatörü
(koşul) ? deyim1 : deyim2 ;
şeklinde yazılır.
ÖRNEK: (a<b) ? printf("a küçüktür b") : printf("a büyüktür b") ;
a değişkeninin değeri b değişkeninin değerinden küçükse ilk deyim büyükse ikinci deyim gerçekleşir.
ÖRNEK2: sonuc = (a<b) ? 1 : 0 ;
a değişkeninin değeri b değişkeninin değerinden küçükse sonuc değişkeni 1 değerini alır,büyükse 0 değerini alır.
Gördüğünüz gibi karşılaştırma yaparak doğru yada yanlış olup olmadığını kontrol eder ve sonuca göre istenilenleri yapar.
İşaretçi operatörleri ve sizeof operatörünü anlatmıyorum. İşaretçi operatörlerini işaretçileri anlatırken göstereceğim, sizeof operatörü ise değişkenin bellekte kapladığı yeri gösterir ve "sizeof değişkenadı" şeklinde kullanılır. Mesela "k=sizeof(m)" kodu m değişkeninin kapladığı alanı k değişkenine atar.
Operatörleri de böylece bitirmiş olduk,hadi iyi çalışmalar :)
-
İlk konu: http://www.tahribat.com/Forum-Dokuman1-Algoritma-Ve-Cye-Giris-140794/
İkinci konu: http://www.tahribat.com/Forum-Dokuman2-C-Degisken-Bildirimi-Ve-Degisken-Tipleri-140799/
Üçüncü konu: Şu an bu konudasınız
Bir sonraki başlık: Çok yakında...
-
wasd bunu yazdı:
-----------------------------
İlk konu: http://www.tahribat.com/Forum-Dokuman1-Algoritma-Ve-Cye-Giris-140794/
İkinci konu: http://www.tahribat.com/Forum-Dokuman2-C-Degisken-Bildirimi-Ve-Degisken-Tipleri-140799/
Üçüncü konu: Şu an bu konudasınız
Bir sonraki başlık: Çok yakında...
-----------------------------hocam keşke tek bi konuda bölüm bölüm toplasaydınız. mesajlar ile.
çok dagınık olmuş böyle.
-
BarisYigit bunu yazdı:
-----------------------------
hocam keşke tek bi konuda bölüm bölüm toplasaydınız. mesajlar ile.
çok dagınık olmuş böyle
-----------------------------Konular tamamlandığında dökümanlar kısmına ekletilir,şimdilik böyle konularla yazıcam,2. mesajlarımdada bir önceki ve bir sonraki konunun linki olucak :)
EDİT: Bugünlük 3 konu yeter, bunları okusun takip edenler, takıldığınız yerleri hangi konuda takıldıysanız o konunun altına yazın cevaplayayım.
NOT: Visual Studio kurun makinanıza,ufaktan ufaktan örneklerde yapmaya başlıycaz, hangi kodun ne işe yaradığını yazıp çalıştırarak daha iyi anlarsınız.
-
wasd bunu yazdı:
-----------------------------
BarisYigit bunu yazdı:
-----------------------------
hocam keşke tek bi konuda bölüm bölüm toplasaydınız. mesajlar ile.
çok dagınık olmuş böyle
-----------------------------Konular tamamlandığında dökümanlar kısmına ekletilir,şimdilik böyle konularla yazıcam,2. mesajlarımdada bir önceki ve bir sonraki konunun linki olucak :)
-----------------------------demek istediğin forum kalabalığı olmasın diye.
tek bi konu altında her postta anlatabilirseniz ilerlemeli çok daha güzel olurdu :)yinede siz bilirsiniz.
-
BarisYigit bunu yazdı:
-----------------------------demek istediğin forum kalabalığı olmasın diye.
tek bi konu altında her postta anlatabilirseniz ilerlemeli çok daha güzel olurdu :)yinede siz bilirsiniz.
-----------------------------Açıkçası öyle uzuun uzun giden konuları okumak insanı bi yerden sonra sıkıyo, bu şekilde "ben 2. konuda kalmıştım" gibi bişey olabilir ama tek konuda o iş karışabilir ve zaten dediğim gibi kitaplar falan var,öyle isteyen kitaplara bakabilir,yada konuları birleştirip dökümanlara eklettirebilirsem o zaman dökümanlardan takip edebilir :)
-
eline sağlık hocam
-
Holyzone bunu yazdı:
-----------------------------
eline sağlık hocam
-----------------------------Bi an Holyone sandım heyecan yaptım :D cümleten bişeyler öğrenelim dedim,faydalı konu açılmıyo diye isyan etmek yerine biz bişeyler yapalım diye düşündüm.
