„C ++“ operatoriai

Šioje pamokoje su pavyzdžių pagalba sužinosime apie skirtingus operatorių tipus C ++. Programuojant operatorius yra simbolis, veikiantis reikšmę ar kintamąjį.

Operatoriai yra simboliai, atliekantys kintamųjų ir reikšmių operacijas. Pavyzdžiui, +yra operatorius, naudojamas sudėti, o -operatorius naudojamas atimant.

Operatoriai C ++ gali būti suskirstyti į 6 tipus:

  1. Aritmetikos operatoriai
  2. Užduočių operatoriai
  3. Ryšių operatoriai
  4. Loginiai operatoriai
  5. Operatoriai bitais
  6. Kiti operatoriai

1. C ++ aritmetikos operatoriai

Aritmetiniai operatoriai naudojami kintamiesiems ir duomenims atlikti aritmetines operacijas. Pavyzdžiui,

 a + b; 

Čia +operatorius naudojamas pridėti du kintamuosius a ir b. Panašiai C ++ yra daugybė kitų aritmetikos operatorių.

operatorius Operacija
+ Papildymas
- Atimtis
* Dauginimas
/ Padalijimas
% „Modulo“ operacija (likusi dalis po padalijimo)

1 pavyzdys: Aritmetikos operatoriai

  #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; ) 

Rezultatas

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

Čia, operatoriai +, -ir *apskaičiuoti Be to, atimtis, daugyba ir atitinkamai kaip mes galime tikėtis.

/ Skyriaus operatorius

Atkreipkite dėmesį į operaciją (a / b)mūsų programoje. /Operatorius yra skyrius operatorius.

Kaip matome iš pirmiau pateikto pavyzdžio, jei sveikasis skaičius padalijamas iš kito sveiko skaičiaus, gausime koeficientą. Tačiau, jei daliklis arba dividendas yra slankiojo kablelio skaičius, rezultatą gausime dešimtainiais skaičiais.

 C ++, 7/2 yra 3 7,0 / 2 yra 3,5 7 / 2,0 yra 3,5 7,0 / 2,0 yra 3,5 

% „Modulo“ operatorius

„Modulo“ operatorius %apskaičiuoja likusią dalį. Kai a = 9padalijama iš b = 4, likusi dalis yra 1 .

Pastaba:% operatorius gali būti naudojamas tik su skaičiais.

Prieaugio ir mažinimo operatoriai

C ++ taip pat pateikia prieaugio ir mažinimo operatorius: ++ir --atitinkamai. ++padidina operando vertę 1 , o --sumažina 1 .

Pavyzdžiui,

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

Čia numerio vertė padidėja iki 6, palyginti su pradine verte 5 .

2 pavyzdys: prieaugio ir mažėjimo operatoriai

 // 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; ) 

Rezultatas

 rezultatas_a = 11 rezultatas_b = 99 

Aukščiau pateiktoje programoje mes naudojome ++ir --operatorius kaip priešdėliai . Šiuos operatorius taip pat galime naudoti kaip postfix .

Šiek tiek skiriasi, kai šie operatoriai naudojami kaip priešdėlis, palyginti su tais atvejais, kai jie naudojami kaip priešdėlis.

Norėdami sužinoti daugiau apie šiuos operatorius, apsilankykite prieaugio ir mažinimo operatoriams.

2. C ++ užduočių operatoriai

C ++ versijoje priskyrimo reikšmėms kintamiesiems naudojami priskyrimo operatoriai. Pavyzdžiui,

 // assign 5 to a a = 5; 

Čia priskyrėme 5kintamojo a vertę .

operatorius Pavyzdys Prilygsta
= 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;

2 pavyzdys: priskyrimo operatoriai

 #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; ) 

Rezultatas

 temp = 2 a = 9 

3. C ++ santykių operatoriai

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)įvertina iki 0, nes operandas (5 == 5)yra 1 (tiesa).

5. „C ++“ operatoriai bitais

C ++ versijoje operacijos bitų pavidalu naudojamos operacijoms atlikti su atskirais bitais. Jie gali būti naudojami tik kartu charir intduomenų tipai.

operatorius apibūdinimas
& Dvejetainis IR
| Dvejetainis ARBA
^ Dvejetainis XOR
~ Dvejetainis vienas papildymas
<< Dvejetainis poslinkis kairėn
>> Dvejetainis poslinkis dešinėn

Norėdami sužinoti daugiau, apsilankykite C ++ operatoriais bitais.

Be operatorių pirmiau aptartų, yra keletas kitų ūkio subjektų, kaip antai sizeof, ?, ., &, ir tt, kad negali būti tvarkingai suskirstyti į vieno ar kito tipo. Daugiau apie šiuos operatorius sužinosime vėlesnėse pamokose.

Įdomios straipsniai...