Standart C Programlama Dili


3.6. İşleç Önceliği Ve Birleşme

İşleç önceliği ve birleşme çizelgesinin en son durumu Çizelge 3.1’de gösterilmiştir. Bu çizelge yeni tanıtılan işleçlerle daha ileriki bölümlerde tanıtılacak olan işleçlerin tamamını içerir.

ÇİZELGE 3.1 C işleç önceliği ve birleşme
Sonek işleçler [] () . -> ++ -- (tip){liste}
Önek işleçler ++ -- ! ~ + - * (dolaylama) & (adres alma) sizeof _Alignof
Kalıp işleci (tip)
Çarpma işleçleri * / %
Toplama işleçleri + -
Bit kaydırma işleçleri << >>
Bağıntısal işleçler < <= > >=
Eşitlik işleçleri == !=
Bitsel VE işleci &
Bitsel dışlayan VEYA işleci ^
Bitsel VEYA işleci |
Mantıksal VE işleci &&
Mantıksal VEYA işleci ||
Koşullu işlec ? :
Atama işleçleri = += -= *= /= %=
<<= >>= &= ^= |=
Virgül işleci ,

Şimdi bu çizelgenin ne anlama geldiğini bir daha gözden geçirelim. Bu çizelge, C dilindeki bütün işleçleri, azalan öncelik sıralarına göre liste halinde vermektedir. Aynı satırda verilmiş olan işleçler aynı önceliğe sahiptirler. Eğer aynı önceliğe sahip iki işlecimiz varsa, o zaman çizelgenin en sağ sütununda gösterilen birleşmeyi kullanırız. Sağa doğru ok (→) soldan sağa birleşmeyi ifade eder, örneğin x/y/z ile (x/y)/z aynı anlamı taşırlar. Sola doğru ok (←) sağdan sola birleşmeyi belirtir, örneğin x=y=z ile x=(y=z) eşdeğer ifadelerdir. Tüm tekli önek işleçler, kalıp işleci, üçlü (koşullu) işleç ve tüm atama işleçleri sağdan sola doğru gruplanırlar; geri kalanların soldan sağa doğru birleşme özelliği vardır. Bu çizelgede gösterilen bazı işleçler henüz anlatılmamıştır. Bunlar: (), ., ->, (tip){liste} (bileşik değişmez) ve sizeof ile _Alignof’tur.