C ++ operátoři

V tomto kurzu se pomocí příkladů dozvíme o různých typech operátorů v C ++. V programování je operátor symbol, který pracuje s hodnotou nebo proměnnou.

Operátory jsou symboly, které provádějí operace s proměnnými a hodnotami. Například +je operátor používaný k přidání, zatímco -je operátor používaný k odečtení.

Operátory v C ++ lze rozdělit do 6 typů:

  1. Aritmetické operátory
  2. Operátoři přiřazení
  3. Relační operátoři
  4. Logičtí operátoři
  5. Bitové operátory
  6. Ostatní operátoři

1. C ++ aritmetické operátory

Aritmetické operátory se používají k provádění aritmetických operací s proměnnými a daty. Například,

 a + b; 

Zde se +operátor používá k přidání dvou proměnných aab. Podobně existují různé další aritmetické operátory v C ++.

Operátor Úkon
+ Přidání
- Odčítání
* Násobení
/ Divize
% Modulární provoz (zbytek po rozdělení)

Příklad 1: Aritmetické operátory

  #include using namespace std; int main() ( int a, b; a = 7; b = 2; // printing the sum of a and b cout << "a + b = " << (a + b) << endl; // printing the difference of a and b cout << "a - b = " << (a - b) << endl; // printing the product of a and b cout << "a * b = " << (a * b) << endl; // printing the division of a by b cout << "a / b = " << (a / b) << endl; // printing the modulo of a by b cout << "a % b = " << (a % b) << endl; return 0; ) 

Výstup

 a + b = 9 a - b = 5 a * b = 14 a / b = 3 a% b = 1 

Zde jsou operátoři +, -a *výpočetní sčítání, odčítání, násobení a v tomto pořadí, jak jsme mohli očekávat.

/ Provozovatel divize

Všimněte si operace (a / b)v našem programu. /Operátor je operátor dělení.

Jak vidíme z výše uvedeného příkladu, pokud je celé číslo vyděleno jiným celým číslem, dostaneme podíl. Pokud je však dělitel nebo dividenda číslo s plovoucí desetinnou čárkou, dostaneme výsledek v desetinných číslech.

 V C ++ 7/2 je 3 7,0 / 2 je 3,5 7 / 2,0 je 3,5 7,0 / 2,0 je 3,5 

% Modulo operátor

Operátor modulo %spočítá zbytek. Když a = 9je děleno b = 4, zbytek je 1 .

Poznámka:% Operátor může být použit pouze s celými čísly.

Operátory přírůstku a snížení

C ++ také přírůstek a dekrement operátory: ++a --resp. ++zvyšuje hodnotu operandu o 1 , zatímco --snižuje o 1 .

Například,

 int num = 5; // increasing num by 1 ++num; 

Zde se hodnota num zvýší na 6 z původní hodnoty 5 .

Příklad 2: Operátory přírůstku a snížení

 // Working of increment and decrement operators #include using namespace std; int main() ( int a = 10, b = 100, result_a, result_b; // incrementing a by 1 and storing the result in result_a result_a = ++a; cout << "result_a = " << result_a << endl; // decrementing b by 1 and storing the result in result_b result_b = --b; cout << "result_b = " << result_b << endl; return 0; ) 

Výstup

 result_a = 11 result_b = 99 

Ve výše uvedeném programu jsme použili ++a --operátor jako předpony . Můžeme také použít tyto operátory jako postfix .

Existuje malý rozdíl, když jsou tyto operátory použity jako předpona oproti tomu, když jsou použity jako postfix.

Další informace o těchto operátorech najdete v operátorech zvyšování a snižování.

2. C ++ operátoři přiřazení

V C ++ se operátory přiřazení používají k přiřazení hodnot k proměnným. Například,

 // assign 5 to a a = 5; 

Zde jsme 5proměnné a přiřadili hodnotu o .

Operátor Příklad Ekvivalentní
= a = b; a = b;
+= a += b; a = a + b;
-= a -= b; a = a - b;
*= a *= b; a = a * b;
/= a /= b; a = a / b;
%= a %= b; a = a % b;

Příklad 2: Operátoři přiřazení

 #include using namespace std; int main() ( int a, b, temp; // 2 is assigned to a a = 2; // 7 is assigned to b b = 7; // value of a is assigned to temp temp = a; // temp will be 2 cout << "temp = " << temp << endl; // assigning the sum of a and b to a a += b; // a = a +b cout << "a = " << a << endl; return 0; ) 

Výstup

 teplota = 2 a = 9 

3. C ++ relační operátoři

A relational operator is used to check the relationship between two operands. For example,

 // checks if a is greater than b a> b; 

Here, > is a relational operator. It checks if a is greater than b or not.

If the relation is true, it returns 1 whereas if the relation is false, it returns 0.

Operator Meaning Example
== Is Equal To 3 == 5 gives us false
!= Not Equal To 3 != 5 gives us true
> Greater Than 3> 5 gives us false
< Less Than 3 < 5 gives us true
>= Greater Than or Equal To 3>= 5 give us false
<= Less Than or Equal To 3 <= 5 gives us true

Example 4: Relational Operators

 #include using namespace std; int main() ( int a, b; a = 3; b = 5; bool result; result = (a == b); // false cout << "3 == 5 is " << result << endl; result = (a != b); // true cout << "3 != 5 is " << result < b; // false cout < 5 is " << result << endl; result = a < b; // true cout << "3 < 5 is " << result <= b; // false cout <= 5 is " << result << endl; result = a <= b; // true cout << "3 <= 5 is " << result << endl; return 0; ) 

Output

 3 == 5 is 0 3 != 5 is 1 3> 5 is 0 3 = 5 is 0 3 <= 5 is 1 

Note: Relational operators are used in decision making and loops.

4. C++ Logical Operators

Logical operators are used to check whether an expression is true or false. If the expression is true, it returns 1 whereas if the expression is false, it returns 0.

Operator Example Meaning
&& expression1 && expression2 Logical AND.
True only if all the operands are true.
|| expression1 || expression2 Logical OR.
True if at least one of the operands is true.
! !expression Logical NOT.
True only if the operand is false.

In C++, logical operators are commonly used in decision making. To further understand the logical operators, let's see the following examples,

 Suppose, a = 5 b = 8 Then, (a> 3) && (b> 5) evaluates to true (a> 3) && (b 3) || (b> 5) evaluates to true (a> 3) || (b < 5) evaluates to true (a < 3) || (b 3) evaluates to false 

Example 5: Logical Operators

 #include using namespace std; int main() ( bool result; result = (3 != 5) && (3 < 5); // true cout << "(3 != 5) && (3 < 5) is " << result << endl; result = (3 == 5) && (3 < 5); // false cout << "(3 == 5) && (3 < 5) is " << result < 5); // false cout < 5) is " << result << endl; result = (3 != 5) || (3 < 5); // true cout << "(3 != 5) || (3 < 5) is " << result < 5); // true cout < 5) is " << result < 5); // false cout < 5) is " << result << endl; result = !(5 == 2); // true cout << "!(5 == 2) is " << result << endl; result = !(5 == 5); // false cout << "!(5 == 5) is " << result << endl; return 0; ) 

Output

 (3 != 5) && (3 < 5) is 1 (3 == 5) && (3 5) is 0 (3 != 5) || (3 5) is 1 (3 == 5) || (3 < 5) is 0 !(5 == 2) is 1 !(5 == 5) is 0 

Explanation of logical operator program

  • (3 != 5) && (3 < 5) evaluates to 1 because both operands (3 != 5) and (3 < 5) are 1 (true).
  • (3 == 5) && (3 < 5) evaluates to 0 because the operand (3 == 5) is 0 (false).
  • (3 == 5) && (3> 5) evaluates to 0 because both operands (3 == 5) and (3> 5) are 0 (false).
  • (3 != 5) || (3 < 5) evaluates to 1 because both operands (3 != 5) and (3 < 5) are 1 (true).
  • (3 != 5) || (3> 5) evaluates to 1 because the operand (3 != 5) is 1 (true).
  • (3 == 5) || (3> 5) evaluates to 0 because both operands (3 == 5) and (3> 5) are 0 (false).
  • !(5 == 2) evaluates to 1 because the operand (5 == 2) is 0 (false).
  • !(5 == 5)vyhodnotí na 0, protože operand (5 == 5)je 1 (true).

5. Bitové operátory C ++

V C ++ se bitové operátory používají k provádění operací na jednotlivých bitech. Mohou být použity pouze po boku chara intdatové typy.

Operátor Popis
& Binární AND
| Binární OR
^ Binární XOR
~ Binární doplněk
<< Binární posun vlevo
>> Binární posun doprava

Další informace najdete v bitových operátorech C ++.

Kromě provozovatelů diskutovaných výše, existuje několik dalších operátorů, jako jsou sizeof, ?, ., &, atd., Které nemohou být úhledně zařazena do jedné nebo jiného typu. Další informace o těchto operátorech se dozvíme v pozdějších cvičeních.

Zajímavé články...