In deze tutorial zullen we met behulp van voorbeelden leren over de verschillende soorten operators in C ++. Bij het programmeren is een operator een symbool dat werkt op een waarde of een variabele.
Operatoren zijn symbolen die bewerkingen uitvoeren op variabelen en waarden. Is bijvoorbeeld +
een operator die wordt gebruikt voor optellen, terwijl -
is een operator die wordt gebruikt voor aftrekken.
Operators in C ++ kunnen worden ingedeeld in 6 typen:
- Rekenkundige operatoren
- Toewijzingsoperatoren
- Relationele operators
- Logische operators
- Bitwise-operators
- Andere operators
1. C ++ rekenkundige operatoren
Rekenkundige operatoren worden gebruikt om rekenkundige bewerkingen uit te voeren op variabelen en gegevens. Bijvoorbeeld,
a + b;
Hier wordt de +
operator gebruikt om twee variabelen a en b toe te voegen. Evenzo zijn er verschillende andere rekenkundige operatoren in C ++.
Operator | Operatie |
---|---|
+ | Toevoeging |
- | Aftrekken |
* | Vermenigvuldiging |
/ | Divisie |
% | Modulo-operatie (rest na deling) |
Voorbeeld 1: rekenkundige operatoren
#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; )
Uitvoer
een + b = 9 een - b = 5 een * b = 14 een / b = 3 een% b = 1
Hier, de operatoren +
, -
en *
berekenen optellen, aftrekken en vermenigvuldigen respectievelijk zoals we hadden verwacht.
/ Divisie Operator
Let op de werking (a / b)
in ons programma. De /
operator is de divisie-operator.
Zoals we in het bovenstaande voorbeeld kunnen zien, krijgen we het quotiënt als een geheel getal wordt gedeeld door een ander geheel getal. Als de deler of het deeltal echter een getal met drijvende komma is, krijgen we het resultaat in decimalen.
In C ++ is 7/2 3 7,0 / 2 is 3,5 7 / 2,0 is 3,5 7,0 / 2,0 is 3,5
% Modulo-operator
De modulo-operator %
berekent de rest. Wanneer a = 9
wordt gedeeld door b = 4
, is de rest 1 .
Opmerking: de %
operator kan alleen worden gebruikt met gehele getallen.
Operatoren voor verhogen en verlagen
C ++ biedt ook operators voor verhogen en verlagen: ++
en --
respectievelijk. ++
verhoogt de waarde van de operand met 1 , terwijl --
deze met 1 verlaagt .
Bijvoorbeeld,
int num = 5; // increasing num by 1 ++num;
Hier wordt de waarde van num verhoogd naar 6 vanaf de oorspronkelijke waarde van 5 .
Voorbeeld 2: Operatoren voor verhogen en verlagen
// 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; )
Uitvoer
resultaat_a = 11 resultaat_b = 99
In het bovenstaande programma hebben we ++
en --
operator als voorvoegsels gebruikt . We kunnen deze operatoren ook gebruiken als postfix .
Er is een klein verschil wanneer deze operators als prefix worden gebruikt en wanneer ze als postfix worden gebruikt.
Voor meer informatie over deze operatoren gaat u naar operatoren voor verhogen en verlagen.
2. C ++ - toewijzingsoperatoren
In C ++ worden toewijzingsoperatoren gebruikt om waarden aan variabelen toe te wijzen. Bijvoorbeeld,
// assign 5 to a a = 5;
Hier hebben we een waarde toegewezen 5
aan de variabele a.
Operator | Voorbeeld | Gelijk aan |
---|---|---|
= | 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; |
Voorbeeld 2: toewijzingsoperatoren
#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; )
Uitvoer
temp = 2 a = 9
3. C ++ relationele operatoren
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)
evalueert tot 0 omdat de operand(5 == 5)
is 1 (true).
5. C ++ Bitwise-operators
In C ++ worden bitsgewijze operatoren gebruikt om bewerkingen op afzonderlijke bits uit te voeren. Ze kunnen alleen naast char
en int
gegevenstypen worden gebruikt .
Operator | Omschrijving |
---|---|
& | Binair EN |
| | Binair OF |
^ | Binaire XOR |
~ | Binary One's Complement |
<< | Binaire verschuiving naar links |
>> | Binaire verschuiving naar rechts |
Ga voor meer informatie naar C ++ bitwise-operators.
Naast de operators hierboven besproken, zijn er een paar andere subjecten als sizeof
, ?
, .
, &
, etc., die niet netjes ingedeeld in één of ander type. We zullen meer over deze operators leren in latere tutorials.