C ++ - operatörer

I denna handledning lär vi oss om de olika typerna av operatörer i C ++ med hjälp av exempel. Vid programmering är en operatör en symbol som fungerar på ett värde eller en variabel.

Operatörer är symboler som utför operationer på variabler och värden. Till exempel +är en operatör som används för addition, medan -en operatör som används för subtraktion.

Operatörer i C ++ kan klassificeras i sex typer:

  1. Aritmetiska operatörer
  2. Uppdragsoperatörer
  3. Relationsoperatörer
  4. Logiska operatörer
  5. Bitvisa operatörer
  6. Andra operatörer

1. C ++ aritmetiska operatörer

Aritmetiska operatorer används för att utföra aritmetiska operationer på variabler och data. Till exempel,

 a + b; 

Här används +operatören för att lägga till två variabler a och b. På samma sätt finns det olika andra aritmetiska operatorer i C ++.

Operatör Drift
+ Tillägg
- Subtraktion
* Multiplikation
/ Division
% Modulo Operation (Resten efter uppdelning)

Exempel 1: Aritmetiska operatörer

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

Produktion

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

Här operatörerna +, -och *compute addition, subtraktion och multiplikation respektive som vi kan ha förväntat.

/ Division Operatör

Observera funktionen (a / b)i vårt program. Den /operatör är divisionen operatören.

Som vi kan se från exemplet ovan, om ett heltal divideras med ett annat heltal, får vi kvoten. Men om antingen divisor eller utdelning är ett flytande nummer får vi resultatet i decimaler.

 I C ++ är 7/2 3 7,0 / 2 är 3,5 7 / 2,0 är 3,5 7,0 / 2,0 är 3,5 

% Modulo-operatör

Moduloperatören %beräknar resten. När a = 9divideras med b = 4är resten 1 .

Obs: Det %Operatören kan endast användas med heltal.

Öknings- och minskningsoperatörer

C ++ ger också inkrement- och minsknings operatorer: ++och --respektive. ++ökar värdet på operanden med 1 medan den --minskar med 1 .

Till exempel,

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

Här ökas värdet på num till 6 från det ursprungliga värdet på 5 .

Exempel 2: Increment and Decrement Operators

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

Produktion

 resultat_a = 11 resultat_b = 99 

I ovanstående program använde vi ++och --operatör som prefix . Vi kan också använda dessa operatörer som postfix .

Det finns en liten skillnad när dessa operatorer används som prefix kontra när de används som postfix.

Om du vill veta mer om dessa operatörer besöker du steg för steg och minskning av operatörer.

2. C ++ - uppdragsoperatörer

I C ++ används tilldelningsoperatörer för att tilldela värden till variabler. Till exempel,

 // assign 5 to a a = 5; 

Här har vi tilldelat 5variabeln a ett värde av .

Operatör Exempel Ekvivalent med
= 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;

Exempel 2: Uppdragsoperatörer

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

Produktion

 temp = 2 a = 9 

3. C ++ relationsoperatörer

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)utvärderas till 0 eftersom operand (5 == 5)är 1 (true).

5. C ++ bitvis operatörer

I C ++ används bitvis operatörer för att utföra operationer på enskilda bitar. De kan bara användas tillsammans med charoch intdatatyper.

Operatör Beskrivning
& Binär OCH
| Binär ELLER
^ Binär XOR
~ Binär komplement
<< Binärväxling vänster
>> Binärväxling höger

För att lära dig mer, besök C ++ bitvis operatörer.

Bortsett från operatörerna som diskuterats ovan, finns det några andra operatörer, såsom sizeof, ?, ., &, etc, som inte kan prydligt klassificeras i en eller annan typ. Vi kommer att lära oss mer om dessa operatörer i senare handledning.

Intressanta artiklar...