Operator to symbol, który powoduje, że kompilator wykonuje określoną akcję. Najczęściej korzystamy z operatorów w kontekście wykorzystywanych w programie zmiennych. Ze względu na rodzaj operacji operatory możemy podzielić na: operatory arytmetyczne, operatory bitowe, operatory przypisania i operatory porównania. W zależności od literatury może się zmieniać podział operatorów, ale nie jest to istotne z punktu widzenia programisty;) Ważne, żeby rozumieć sposób działania poszczególnych operatorów.
OPERATORY ARYTMETYCZNE
OPERATOR | SKŁADNIA | OPIS |
---|---|---|
= | a=b | Powoduje przypisanie wartości zmiennej b do a |
+ | a+b | Zwraca wartość sumy wyrażeń |
- | a-b | Zwraca wartość różnicy wyrażeń a - b |
* | a*b | Zwraca wartość iloczynu wyrażeń |
/ | a/b | Zwraca wartość dzielenia a przez b |
% | a%b | Zwraca resztę z dzielenia |
Przykłady:
int x,y,z;
x=9; //zmiennej x przypisaliśmy wartość 9
y=x+3;
z=y-2;
x=x*2;
y=x/3;
z=5%2; //reszta z dzielenia z=1
OPERATORY BITOWE
OPERATOR | SKŁADNIA | OPIS |
---|---|---|
& | a&b | Wykonuje bitową operację AND |
^ | a^b | Wykonuje bitową operację XOR |
| | a|b | Wykonuje bitową operację OR |
~ | a=~a | Wykonuje bitową negację liczby |
<< | a<<b | Przesuwa bity w lewo o b miejsc |
>> | a>>b | Przesuwa bity w prawo o b miejsc |
Przykłady:
int a = 92; // binarnie: 0000000001011100
int b = 101; // binarnie: 0000000001100101
int c = a & b; // wynik: 0000000001000100
int d = a | b; // wynik: 0000000001111101
int x = 12; // binarnie: 1100
int y = 10; // binarnie: 1010
int z = x ^ y; // wynik: 0110
int a = 103; // binarnie: 0000000001100111
int b = ~a; // wynik: 1111111110011000
int a = 5; // binarnie: 0000000000000101
int b = a << 3; // binarnie: 0000000000101000
int c = b >> 3; // binarnie: 0000000000000101
OPERATORY PRZYPISANIA
OPERATOR | SKŁADNIA | OPIS |
---|---|---|
++ | a++ lub ++a | Inkrementacja - zwraca wartość i zwiększa a o 1 (lub zwiększa i zwraca wartość) |
-- | a-- lub --a | Dekrementacja - zwraca wartość i zmniejsza a o 1 (lub zmniejsza i zwraca wartość) |
+= | a+=b | Powoduje przypisanie wartości a+b do zmiennej a |
-= | a-=b | Powoduje przypisanie wartości a-b do zmiennej a |
*= | a*=b | Przypisuje wartość wyrażenia a*b do zmiennej a |
/= | a/=b | Przypisuje wartość wyrażenia a/b do zmiennej a |
&= | a&=2 | Wykonuje iloczyn bitowy a i 2 |
|= | a|=10 | Wykonuje sumę bitową a i 10 |
Przykłady:
int x;
x=9; //zmiennej x przypisaliśmy wartość 9
x++; //x=10
x--; //x=9
x+=2; //x=11
x-=3; //x=8
OPERATORY PORÓWNANIA
OPERATOR | SKŁADNIA | OPIS |
---|---|---|
== | a==b | Zwraca TRUE jeśli oba wyrażenia są sobie równe |
!= | a!=b | Zwraca TRUE kiedy oba wyrażenia są różne |
< | a<b | Zwraca TRUE kiedy wyrażenie a jest mniejsze od b |
> | a>b | Zwraca TRUE kiedy pierwsze wyrażenie jest większe od drugiego |
>= | a>=b | Zwraca TRUE kiedy a jest większe lub równe b |
<= | a<=b | Zwraca TRUE kiedy a jest mniejsze lub równe b |
&& | a && b | Zwraca TRUE, jeśli obra wyrażenia są prawdziwe |
|| | a || b | Zwraca TRUE, jeśli któreś z wyrażeń jest prawdziwe |
! | !a | Zmienia wartość logiczną wyrażenia na przeciwną |
Przykłady:
int x;
if(x==9) // prawda gdy x równe 9
if(x!=9) // prawda gdy x różne od 9
if(x<9) // prawda gdy x mniejsze od 9
if(x>9) // prawda gdy x większe od 9
if(x<=9) // prawda gdy x mniejsze lub równe 9
if((x<5)&&(x>2)) // prawda gdy x2
if((x<5)||(x>8)) // prawda gdy x8