In questo tutorial, impareremo i diversi tipi di operatori in C ++ con l'aiuto di esempi. Nella programmazione, un operatore è un simbolo che opera su un valore o una variabile.
Gli operatori sono simboli che eseguono operazioni su variabili e valori. Ad esempio, +è un operatore utilizzato per l'addizione, mentre -è un operatore utilizzato per la sottrazione.
Gli operatori in C ++ possono essere classificati in 6 tipi:
- Operatori aritmetici
- Operatori di assegnazione
- Operatori relazionali
- Operatori logici
- Operatori bit per bit
- Altri operatori
1. Operatori aritmetici C ++
Gli operatori aritmetici vengono utilizzati per eseguire operazioni aritmetiche su variabili e dati. Per esempio,
 a + b; 
Qui, l' +operatore viene utilizzato per aggiungere due variabili a e b. Allo stesso modo ci sono vari altri operatori aritmetici in C ++.
| Operatore | Operazione | 
|---|---|
| + | Aggiunta | 
| - | Sottrazione | 
| * | Moltiplicazione | 
| / | Divisione | 
| % | Funzionamento modulo (resto dopo la divisione) | 
Esempio 1: operatori aritmetici
  #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; ) 
Produzione
a + b = 9 a - b = 5 a * b = 14 a / b = 3 a% b = 1
Qui, gli operatori +, -e *calcolo addizione, sottrazione, moltiplicazione e, rispettivamente, come ci si sarebbe aspettato.
/ Operatore di divisione
Nota l'operazione (a / b)nel nostro programma. L' /operatore è l'operatore di divisione.
Come possiamo vedere dall'esempio sopra, se un intero viene diviso per un altro intero, otterremo il quoziente. Tuttavia, se il divisore o il dividendo è un numero in virgola mobile, otterremo il risultato in decimali.
In C ++, 7/2 è 3 7.0 / 2 è 3.5 7 / 2.0 è 3.5 7.0 / 2.0 è 3.5
% Modulo Operator
L'operatore modulo %calcola il resto. Quando a = 9è diviso per b = 4, il resto è 1 .
Nota: l' %operatore può essere utilizzato solo con numeri interi.
Operatori di incremento e decremento
C ++ fornisce anche operatori di incremento e decremento: ++e --rispettivamente. ++aumenta il valore dell'operando di 1 , mentre lo --diminuisce di 1 .
Per esempio,
 int num = 5; // increasing num by 1 ++num; 
Qui, il valore di num viene aumentato a 6 dal valore iniziale di 5 .
Esempio 2: operatori di incremento e decremento
 // 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; ) 
Produzione
risultato_a = 11 risultato_b = 99
Nel programma sopra, abbiamo usato ++e --operator come prefissi . Possiamo anche usare questi operatori come suffisso .
C'è una leggera differenza quando questi operatori sono usati come prefisso rispetto a quando sono usati come suffisso.
Per saperne di più su questi operatori, visita gli operatori di incremento e decremento.
2. Operatori di assegnazione C ++
In C ++, gli operatori di assegnazione vengono utilizzati per assegnare valori alle variabili. Per esempio,
 // assign 5 to a a = 5; 
Qui abbiamo assegnato un valore di 5alla variabile a.
| Operatore | Esempio | Equivalente 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; | 
Esempio 2: operatori di assegnazione
 #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; ) 
Produzione
temp = 2 a = 9
3. Operatori relazionali 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 == 5gives us false | 
| != | Not Equal To | 3 != 5gives us true | 
| > | Greater Than | 3> 5gives us false | 
| < | Less Than | 3 < 5gives us true | 
| >= | Greater Than or Equal To | 3>= 5give us false | 
| <= | Less Than or Equal To | 3 <= 5gives 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)restituisce 0 perché l'operando- (5 == 5)è 1 (vero).
5. Operatori bit per bit C ++
In C ++, gli operatori bit per bit vengono utilizzati per eseguire operazioni su singoli bit. Possono essere utilizzati solo insieme a chare inttipi di dati.
| Operatore | Descrizione | 
|---|---|
| & | Binario AND | 
| | | OR binario | 
| ^ | XOR binario | 
| ~ | Binary One's Complement | 
| << | Spostamento binario a sinistra | 
| >> | Spostamento binario a destra | 
Per saperne di più, visita Operatori bit per bit C ++.
Oltre agli attori discussi sopra, ci sono alcuni altri operatori, quali sizeof, ?, ., &, ecc, che non può essere ordinatamente classificati in uno o l'altro tipo. Impareremo di più su questi operatori nei tutorial successivi.








