Operátorok
A c programozási nyelv operátorai:
Precedencia |
Operátor |
Leírás |
Példa |
Példa magyarázata, eredménye |
1 |
() |
Csoportosítás |
(a) |
|
|
[] |
Tömb-elérés |
a[2] |
Hivatkozás a második indexű tömbelemre |
|
-> |
Mutatón keresztüli tag-elérés |
ps->tag |
hivatkozás mutatóval kijelölt struktúra adattagjára |
|
. |
Objektumon keresztüli tag-elérés |
hivatkozás a struktúra adattagjára |
|
|
++ |
Posztfix növelés |
a++ |
az a értéke a növelés előtt |
|
-- |
Posztfix csökkentés |
a-- |
az a értéke a csökkentés előtt |
2 |
! |
Logikai tagadás |
!a |
az a negáltja |
|
~ |
Bitenkénti negálás |
~a |
|
|
++ |
Prefix növelés |
++a |
az a értéke a növelés után |
|
-- |
Prefix csökkentés |
--a |
az a értéke a csökkentés után |
|
- |
Előjel - |
-a |
|
|
+ |
Előjel + |
+a |
|
|
* |
Hivatkozás objektumra |
*p |
hivatkozás a p által mutatott objektumra |
|
& |
Objektum címe |
&a |
az a változó címe |
|
(típus) |
Konverzió típusra |
(b)a |
b típusúvá konvertált a kifejezés |
|
sizeof |
Méret |
sizeof(b) |
b kifejezés mérete byte-ban |
3 |
* |
Szorzás |
a*b |
a és b szorzata |
|
/ |
Osztás |
a/b |
a és b hányadosa |
|
% |
Maradékszámítás |
a%b |
az a/b művelet maradéka |
4 |
+ |
Összeadás |
a+b |
a és b összege |
|
- |
Kivonás |
a-b |
a és b különbsége |
5 |
<< |
Bitenkénti eltolás balra |
a<<b< p=""> |
a bitjeinek balra tolása b bittel |
|
>> |
Bitenkénti eltolás jobbra |
a>>b |
a bitjeinek jobbra tolása b bittel |
6 |
< |
Kisebb |
a<b< p=""> |
1, ha a<b, különben="" 0<="" p=""> |
|
<=" |
Kisebb-egyenlő |
a<="b |
1, ha a<="b," különben 0
|
|
> |
Nagyobb |
a>b |
1, ha a>b, különben 0 |
|
>= |
Nagyobb-egyenlő |
a>=b |
1, ha a>=b, különben 0 |
7 |
== |
Egyenlő |
a==b |
1, ha a egyenlő b-vel, különben 0 |
|
!= |
Nemegyenlő |
a!=b |
1, ha a nem egyenlő b-vel, különben 0 |
8 |
& |
Bitenkénti ÉS |
a&b |
a és b bitjei közötti ÉS kapcsolat |
9 |
^ |
Bitenkénti kizáró VAGY |
a^b |
a és b bitjei közötti KIZÁRÓ VAGY kapcsolat |
10 |
| |
Bitenkénti megengedő VAGY |
a|b |
a és b bitjei közötti VAGY kapcsolat |
11 |
&& |
Logikai ÉS |
a&&b |
a és b közötti logikai ÉS kapcsolat |
12 |
|| |
Logikai(megengedő) VAGY |
a||b |
a és b közötti logikai VAGY kapcsolat |
13 |
? : |
if-then-else operátor |
a?e1:e2 |
az e1 kifejezés, ha a ≠ 0 (igaz ág), és az e2 kifejezés, ha nulla |
14 |
= |
Értékadás |
a=b |
a felveszi b értékét |
|
+= |
Összeadás és értékadás |
a += b |
a + b (az eredmény a-ba kerül) |
|
-= |
Kivonás és értékadás |
a -= b |
a - b (az eredmény a-ba kerül) |
|
*= |
Szorzás és értékadás |
a *= b |
a * b (az eredmény a-ba kerül) |
|
/= |
Osztás és értékadás |
a /= b |
a / b (az eredmény a-ba kerül) |
|
%= |
Maradékképzés és értékadás |
a %= b |
a % b (az eredmény a-ba kerül) |
|
&= |
Bitenkénti ÉS és értékadás |
a &= b |
a & b (az eredmény a-ba kerül) |
|
^= |
Bitenkénti kizáró VAGY és értékadás |
a ^= b |
a ^ b (az eredmény a-ba kerül) |
|
|= |
Bitenkénti megengedő VAGY és értékadás |
a |= b |
a | b (az eredmény a-ba kerül) |
|
<<=" |
Eltolás balra és értékadás |
a <<= b |
a < |
|
>>= |
Eltolás jobbra és értékadás |
a >>= b |
a >> b (az eredmény a-ba kerül) |