Operátoři#

Zavedení#

Operátory v jazyce C++ jsou symboly, které umožňují provádět operace s proměnnými a hodnotami. Patří mezi ně aritmetické, logické, porovnávací, přiřazovací a bitové operátory. C++ také podporuje inkrementaci/dekrementaci, podmíněné výrazy a složené přiřazování. Tyto operace tvoří jádro většiny logiky a matematiky v jakémkoli programu v jazyce C++, včetně řízení robotiky s VEXcode V5.

Arithmetic#

Jméno

Symbol

Operátor

Příklad

Přidání

+

a + b

5 + 3 // 8

Odčítání

-

a - b

10 - 3 // 7

Násobení

*

a * b

5 * 3 // 15

Divize

/

a / b

10 / 4 // 2 (integer division)

Modulo

%

a % b

10 % 4 // 2

Negace

-

-a

-5 // -5

Augmented Arithmetic#

Jméno

Symbol

Operátor

Příklad

Přidání

+=

a += b

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

Odčítání

-=

a -= b

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

Násobení

*=

a *= b

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

Divize

/=

a /= b

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

Modulo

%=

a %= b

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

Comparison#

Jméno

Symbol

Operátor

Příklad

Rovnost

==

a == b

5 == 5 // true

Nerovnost

!=

a != b

5 != 10 // true

Větší než

>

a > b

10 > 5 // true

Méně než

<

a < b

5 < 10 // true

Větší než nebo rovno

>=

a >= b

10 >= 10 // true

Menší než nebo rovno

<=

a <= b

5 <= 5 // true

Logical#

Jméno

Symbol

Operátor

Příklad

Logické A

&&

a && b

true && false // false

Logické NEBO

||

a || b

false || true // true

Logické NE

!

!a

!true // false

Assignment#

Jméno

Symbol

Operátor

Příklad

Úkol

=

a = b

int a = 10;

Bitwise#

Jméno

Symbol

Operátor

Příklad

Bitové AND

&

a & b

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

Bitový OR

|

a | b

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

Bitový XOR

^

a ^ b

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

Bitově NE

~

~a

~5 // -6

Levý posun

<<

a << b

2 << 3 // 16

Pravý posun

>>

a >> b

16 >> 2 // 4

Augmented Bitwise#

Jméno

Symbol

Operátor

Příklad

Bitové AND

&=

a &= b

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

Bitový OR

|=

a |= b

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

Bitový XOR

^=

a ^= b

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

Levý posun

<<=

a <<= b

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

Pravý posun

>>=

a >>= b

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

Ternary (Conditional)#

Jméno

Syntax

Příklad

Podmíněný operátor

condition ? expr1 : expr2

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

Increment / Decrement#

Jméno

Symbol

Operátor

Příklad

Předběžný přírůstek

++

++a

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

Post-Increment

++

a++

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

Předsnížení

--

--a

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

Post-Decrement

--

a--

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