1 / 16

Kifejezések

C. Kifejezések. Ismétlés. Operandus. Az operandusok a C nyelv azon elemei, amelyeken az operátorok fejtik ki hatásukat. Operandus1 operátor Operandus2 a = 5 a + b

brock
Télécharger la présentation

Kifejezések

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. C Kifejezések

  2. Ismétlés

  3. Operandus Az operandusok a C nyelv azon elemei, amelyeken az operátorok fejtik ki hatásukat. Operandus1 operátor Operandus2 a = 5 a + b a += c Azokat a kifejezéseket, amelyek nem igényelnek további kiértékelést, elsődleges (primary) kifejezésnek nevezzük. Pl: Konstatns érték, azonosító, sztring, függvényhívás, tömb-index kifejezés.

  4. Egyoperandusú (unary) operátorok Az operátorokat több szempont alapján lehet csoportosítani. A csoportosítást elvégezhetjük az operandusok száma szerint. Az egyoperandusú(unary) operátorok esetén a kifejezés általános alakja: op operandus vagy operandus op Az első esetben, amikor az operátor (op) megelőzi az operandust előrevetett (prefixes), míg a második esetben hátravetett (postfixes) alakról beszélünk. (1.c) -a a++ sizeof(a) (float)a&a--a

  5. Kétoperandusú (binary) kifejezések Az operátorok többsége két operandussal rendelkezik, ezek a kétoperandusú kifejezések. Operandus1 op Operandus2 a+b a!=b a+=b a/b a%b Ebben a csoportban a hagyományos aritmetikai műveletek mellett megtalálhatók a bitműveletek elvégzésére szolgáló operátorok is. a<<2 a&1111 a|b

  6. Háromoperandusú operátor A C nyelvben az egyetlen háromoperandusú operátor a feltételes operátor. ( ? : ) Feltétel ? Ha igaz : ha hamis a < 0 ?-a: a Ha az a változó értéke kisebb mint nulla akkor a kifejezés eredménye (-a), ha nagyobb mint nulla akkor pedig a értéke lesz. A program kimenete: 5

  7. Operátorok

  8. Operátorok

  9. Operátorok

  10. Operátorok Összehasonlító és logikai operátorok Értékadó operátorok Léptető operátorok

  11. Precedencia és asszociativitás Annak érdekében, hogy bonyolultabb kifejezéseket is helyesen tudjunk használni, meg kell ismerkednünk az elsőbbségi (precedencia) szabályokkal, amelyek meghatározzák a kifejezésekben szereplő műveletek kiértékelési sorrendjét.

  12. Precedencia és asszociativitás

  13. Precedencia és asszociativitás

  14. Típuskonverziók A kifejezések kiértékelése sarán előfordulhat, hogy valamely kétoperandusú operátor különböző típusú operandusokkal rendelkezik. Ahhoz azonban, hogy a művelet elvégezhető legyen, a fordítónak azonos típusúra kell alakítania a két operandust, vagyis típuskonverziót kell végrehajtania. A típuskonverziók egy része automatikusan, a programozó beavatkozása nélkül megy végbe, a c nyelv definíciójában rögzített szabályok alapján. Ezeket a konverziókat implicit vagy automatikus konverzióknak nevezzük. A típuskonverziót azonban a programozó is előírhat a C programban, a típuskonverziós operator felhasználásával. Ez az egyoperandusú operátor a konvertálandó kifejezés előtt zárójelek között tartalmazza a típusnevet. (típusnév) kifejezés Mivel ebben az esetben a típusnév megjelenik a konverziós előírásban, explicit típuskonverzióról beszélünk.

  15. Típuskonverziók

More Related