Bu eğitimde, örnekler yardımıyla operatörlerin önceliği ve ilişkilendirilebilirliği hakkında bilgi edineceksiniz.
Operatörlerin önceliği
Operatörlerin önceliği, bir ifadede birden fazla operatör varsa hangi operatörün ilk olarak yürütüleceğini belirler.
Bir örnek düşünelim:
int x = 5 - 17* 6;
C, öncelik *daha yüksektir -ve =. Bu nedenle 17 * 6önce değerlendirilir. Daha sonra içeren ifade -, önceliğinin -öncekinden daha yüksek olduğu için değerlendirilir =.
İşte yukarıdan aşağıya doğru işleçlerin önceliği tablosu. Mülkiyet ilişkilendirilebilirlik kısaca ele alınacaktır.
Operatörlerin Öncelik ve İlişkilendirme Tablosu
| Şebeke | Operatörün anlamı | İlişkisellik |
|---|---|---|
| () () -> . | İşlevsel çağrı Dizi öğesi başvurusu Dolaylı üye seçimi Doğrudan üye seçimi | Soldan sağa |
| ! ~ + - ++ - & * sizeof (tür) | Mantıksal olumsuzlama Bitsel (1 'ler) tamamlayıcı Tekli artı Tekli eksi Artırma Azaltma Dereference (Adres) İşaretçi başvurusu Bir nesnenin boyutunu döndürür Typecast (dönüştürme) | Sağdan sola |
| * / % | Bölme Kalanını Çarp | Soldan sağa |
| + - | İkili artı (Toplama) İkili eksi (çıkarma) | Soldan sağa |
| << >> | Sola kaydırma Sağa kaydırma | Soldan sağa |
| < <= > > = | Daha az eşit veya daha az Büyüktür Büyük veya eşittir | Soldan sağa |
| == ! = | Eşittir Eşit değildir | Soldan sağa |
| & | Bitsel AND | Soldan sağa |
| ^ | Bit düzeyinde özel VEYA | Soldan sağa |
| | | Bit tabanlı VEYA | Soldan sağa |
| && | Mantıksal AND | Soldan sağa |
| || | Mantıksal VEYA | Soldan sağa |
| ?: | Koşullu Operatör | Sağdan sola |
| = * = / = % = + = - = & = = | = << = >> = | Basit atama Ürünü ata Bölüm ata Kalanı ata Toplamı ata Fark ata Bit şeklinde ata VE Bitsel ata XOR ata YA DA Sola kaydırma ata Sağa kaydırma ata | Sağdan sola |
| , | İfadelerin ayırıcısı | Soldan sağa |
Operatörlerin İlişkilendirilmesi
Operatörlerin ilişkilendirilebilirliği, bir ifadenin değerlendirildiği yönü belirler. Örneğin,
b = a;
Burada, a'nın değeri b'ye atanır, tersi değil. Bunun nedeni =operatörün çağrışımının sağdan sola olmasıdır.
Ayrıca, aynı önceliğe (önceliğe) sahip iki operatör mevcutsa, ilişkilendirilebilirlik bunların yürütüldüğü yönü belirler.
Bir örnek düşünelim:
1 == 2! = 3
Burada operatörler ==ve !=aynı önceliğe sahiptir. Ve çağrışımları soldan sağa doğrudur. Bu nedenle, 1 == 2önce yürütülür.
Yukarıdaki ifade şuna eşdeğerdir:
(1 == 2)! = 3
Not: Bir ifadenin birden çok operatörü varsa (), kodu daha okunaklı hale getirmek için parantez kullanabilirsiniz .








