Σε αυτό το σεμινάριο, θα μάθουμε για τους διαφορετικούς τύπους τελεστών στο C ++ με τη βοήθεια παραδειγμάτων. Στον προγραμματισμό, ένας χειριστής είναι ένα σύμβολο που λειτουργεί σε μια τιμή ή μια μεταβλητή.
Οι τελεστές είναι σύμβολα που εκτελούν λειτουργίες σε μεταβλητές και τιμές. Για παράδειγμα, +
είναι χειριστής που χρησιμοποιείται για προσθήκη, ενώ -
είναι χειριστής που χρησιμοποιείται για αφαίρεση.
Οι χειριστές στο C ++ μπορούν να ταξινομηθούν σε 6 τύπους:
- Αριθμητικοί χειριστές
- Χειριστές ανάθεσης
- Σχεσιακοί χειριστές
- Λογικοί χειριστές
- Τελεστές Bitwise
- Άλλοι χειριστές
1. C ++ Αριθμητικοί χειριστές
Οι αριθμητικοί τελεστές χρησιμοποιούνται για την εκτέλεση αριθμητικών πράξεων σε μεταβλητές και δεδομένα. Για παράδειγμα,
a + b;
Εδώ, ο +
τελεστής χρησιμοποιείται για την προσθήκη δύο μεταβλητών α και β. Ομοίως, υπάρχουν διάφοροι άλλοι αριθμητικοί τελεστές στο C ++.
Χειριστής | Λειτουργία |
---|---|
+ | Πρόσθεση |
- | Αφαίρεση |
* | Πολλαπλασιασμός |
/ | Διαίρεση |
% | Λειτουργία Modulo (Υπόλοιπο μετά τη διαίρεση) |
Παράδειγμα 1: Αριθμητικοί χειριστές
#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; )
Παραγωγή
a + b = 9 a - b = 5 a * b = 14 a / b = 3 a% b = 1
Εδώ, οι τελεστές +
, -
και *
υπολογίζουν την προσθήκη, την αφαίρεση και τον πολλαπλασιασμό αντίστοιχα, όπως θα μπορούσαμε να περιμέναμε.
/ Διαχειριστής τμήματος
Σημειώστε τη λειτουργία (a / b)
στο πρόγραμμά μας. Ο /
χειριστής είναι ο χειριστής διαίρεσης.
Όπως μπορούμε να δούμε από το παραπάνω παράδειγμα, εάν ένας ακέραιος διαιρείται με έναν άλλο ακέραιο, θα λάβουμε το πηλίκο. Ωστόσο, εάν είτε ο διαιρέτης είτε το μέρισμα είναι ένας αριθμός κυμαινόμενου σημείου, θα λάβουμε το αποτέλεσμα σε δεκαδικά ψηφία.
Στο C ++, το 7/2 είναι 3 7,0 / 2 είναι 3,5 7 / 2,0 είναι 3,5 7,0 / 2,0 είναι 3,5
% Χειριστής Modulo
Ο χειριστής modulo %
υπολογίζει το υπόλοιπο. Όταν a = 9
διαιρείται με b = 4
, το υπόλοιπο είναι 1 .
Σημείωση: Ο %
χειριστής μπορεί να χρησιμοποιηθεί μόνο με ακέραιους αριθμούς.
Χειριστές αύξησης και μείωσης
Το C ++ παρέχει επίσης τελεστές αύξησης και μείωσης: ++
και --
αντίστοιχα. ++
αυξάνει την τιμή του τελεστή κατά 1 , ενώ --
μειώνει κατά 1 .
Για παράδειγμα,
int num = 5; // increasing num by 1 ++num;
Εδώ, η τιμή του αριθμού αυξάνεται σε 6 από την αρχική του τιμή 5 .
Παράδειγμα 2: Διαχειριστές αύξησης και μείωσης
// 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; )
Παραγωγή
αποτέλεσμα_α = 11 αποτέλεσμα_β = 99
Στο παραπάνω πρόγραμμα, χρησιμοποιήσαμε ++
και --
χειριστή ως προθέματα . Μπορούμε επίσης να χρησιμοποιήσουμε αυτούς τους τελεστές ως postfix .
Υπάρχει μια μικρή διαφορά όταν αυτοί οι τελεστές χρησιμοποιούνται ως πρόθεμα έναντι όταν χρησιμοποιούνται ως μετά την επιδιόρθωση.
Για να μάθετε περισσότερα σχετικά με αυτούς τους τελεστές, επισκεφθείτε τους τελεστές αύξησης και μείωσης.
2. Χειριστές ανάθεσης C ++
Στο C ++, οι τελεστές ανάθεσης χρησιμοποιούνται για την εκχώρηση τιμών σε μεταβλητές. Για παράδειγμα,
// assign 5 to a a = 5;
Εδώ, έχουμε εκχωρήσει μια τιμή 5
στη μεταβλητή a.
Χειριστής | Παράδειγμα | Ισοδυναμεί με |
---|---|---|
= | 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: Χειριστές ανάθεσης
#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; )
Παραγωγή
temp = 2 a = 9
3. Σχετικοί χειριστές C ++
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)
αξιολογείται στο 0 επειδή ο τελεστής(5 == 5)
είναι 1 (true).
5. C ++ Bitwise χειριστές
Στο C ++, οι τελεστές χρησιμοποιούνται για την εκτέλεση λειτουργιών σε μεμονωμένα bit. Μπορούν να χρησιμοποιηθούν παράλληλα char
και int
τύπους δεδομένων.
Χειριστής | Περιγραφή |
---|---|
& | Δυαδικό ΚΑΙ |
| | Δυαδικό Ή |
^ | Δυαδικό XOR |
~ | Συμπλήρωμα Binary One |
<< | Binary Shift αριστερά |
>> | Δυαδική μετατόπιση δεξιά |
Για να μάθετε περισσότερα, επισκεφτείτε τους τελεστές C ++.
Εκτός από τους φορείς που συζητούνται παραπάνω, υπάρχουν μερικά άλλων φορέων, όπως sizeof
, ?
, .
, &
, κλπ, που μπορούν να κατατάσσονται τακτοποιημένα σε ένα ή τον άλλο τύπο. Θα μάθουμε περισσότερα για αυτούς τους χειριστές σε επόμενα σεμινάρια.