Operatorzy#

Wstęp#

Operatory w C++ to symbole umożliwiające wykonywanie operacji na zmiennych i wartościach. Należą do nich operatory arytmetyczne, logiczne, porównania, przypisania i bitowe. C++ obsługuje również inkrementację/dekrementację, wyrażenia warunkowe i przypisanie złożone. Stanowią one rdzeń większości logiki i matematyki w dowolnym programie C++, w tym w sterowaniu robotyką za pomocą VEXcode IQ.

Arithmetic#

Nazwa

Symbol

Operator

Przykład

Dodatek

+

a + b

5 + 3 // 8

Odejmowanie

-

a - b

10 - 3 // 7

Mnożenie

*

a * b

5 * 3 // 15

Dział

/

a / b

10 / 4 // 2 (integer division)

Moduł

%

a % b

10 % 4 // 2

Negacja

-

-a

-5 // -5

Augmented Arithmetic#

Nazwa

Symbol

Operator

Przykład

Dodatek

+=

a += b

int a = 5;
int b = 3;
a += b; // a = 8

Odejmowanie

-=

a -= b

int a = 10;
int b = 4;
a -= b; // a = 6

Mnożenie

*=

a *= b

int a = 2;
int b = 3;
a *= b; // a = 6

Dział

/=

a /= b

int a = 10;
int b = 4;
a /= b; // a = 2

Moduł

%=

a %= b

int a = 10;
int b = 3;
a %= b; // a = 1

Comparison#

Nazwa

Symbol

Operator

Przykład

Równość

==

a == b

5 == 5 // true

Nierówność

!=

a != b

5 != 10 // true

Większy niż

>

a > b

10 > 5 // true

Mniej niż

<

a < b

5 < 10 // true

Większy lub równy

>=

a >= b

10 >= 10 // true

Mniejsze lub równe

<=

a <= b

5 <= 5 // true

Logical#

Nazwa

Symbol

Operator

Przykład

Logiczne AND

&&

a && b

true && false // false

Logiczne LUB

||

a || b

false || true // true

Logiczne NIE

!

!a

!true // false

Assignment#

Nazwa

Symbol

Operator

Przykład

Zadanie

=

a = b

int a = 10;

Bitwise#

Nazwa

Symbol

Operator

Przykład

Bitowe AND

&

a & b

6 & 3 // 2 (0b110 & 0b011)

OR bitowy

|

a | b

6 | 3 // 7 (0b110 | 0b011)

XOR bitowy

^

a ^ b

6 ^ 3 // 5 (0b110 ^ 0b011)

Bitowe NIE

~

~a

~5 // -6

Przesunięcie w lewo

<<

a << b

2 << 3 // 16

Przesunięcie w prawo

>>

a >> b

16 >> 2 // 4

Augmented Bitwise#

Nazwa

Symbol

Operator

Przykład

Bitowe AND

&=

a &= b

int a = 6;
a &= 3; // a = 2

OR bitowy

|=

a |= b

int a = 6;
a |= 3; // a = 7

XOR bitowy

^=

a ^= b

int a = 6;
a ^= 3; // a = 5

Przesunięcie w lewo

<<=

a <<= b

int a = 5;
a <<= 2; // a = 20

Przesunięcie w prawo

>>=

a >>= b

int a = 20;
a >>= 2; // a = 5

Ternary (Conditional)#

Nazwa

Składnia

Przykład

Operator warunkowy

condition ? expr1 : expr2

int a = 6;
int b = 3;
int max = (a > b) ? a : b; // max = 6

Increment / Decrement#

Nazwa

Symbol

Operator

Przykład

Pre-inkrementacja

++

++a

int a = 5;
int b = ++a;
// a = 6, b = 6

Post-inkrementacja

++

a++

int a = 5;
int b = a++;
// a = 6, b = 5

Pre-Dekrementacja

--

--a

int a = 5;
int b = --a;
// a = 4, b = 4

Post-Dekrementacja

--

a--

int a = 5;
int b = a--;
// a = 4, b = 5