Operatori C ++ con esempi

Sommario:

Anonim

Cosa sono gli operatori?

Un operatore è un simbolo utilizzato per eseguire operazioni sugli operandi. Un operatore gestisce gli operandi. Le operazioni possono essere matematiche o logiche. Esistono diversi tipi di operatori in C ++ per eseguire diverse operazioni.

Considera la seguente operazione:

a = x + y;

Nell'istruzione precedente, x e y sono gli operandi mentre + è un operatore di addizione. Quando il compilatore C ++ incontra l'istruzione precedente, aggiungerà xey e memorizzerà il risultato nella variabile a.

In questo tutorial C ++ imparerai:

  • Cosa sono gli operatori?
  • Operatori aritmetici
  • Operatori relazionali
  • Operatori logici
  • Operatori bit per bit
  • Operatori di assegnazione
  • Operatore Varie
    • dimensione dell'operatore
    • Operatore virgola
    • Operatore condizionale
  • Precedenza degli operatori

Operatori aritmetici

Sono i tipi di operatori utilizzati per eseguire operazioni matematiche / aritmetiche. Loro includono:

Operatore Descrizione
+ operatore di addizione Aggiunge agli operandi.
- operatore di sottrazione Sottrae 2 nd operando dal 1 ° operando.
* operatore di moltiplicazione Moltiplica 2 operandi.
/ operatore di divisione. Divide il numeratore per denominatore.
Operatore% modulo Restituisce il resto dopo la divisione.
++ operatore di incremento Aumenta un valore intero di 1.
- operatore di decremento. Diminuisce un valore intero di 1.

Per esempio:

#include using namespace std;int main() {int a = 11;int b = 5;int c;cout << "a + b is : << a+b << endl; //11+5cout << "a - b is : << a-b << endl; //11-5cout << "a * b is : << a*b << endl; //11*5cout << "a / b is : << a/b << endl; //11/5cout << "a % b is : << a%b << endl; //11%5cout << "a++ is : << a++ << endl; //11++cout << "a-- is : << a-- << endl; //12--return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma. La {segna l'inizio del corpo della funzione main ().
  4. Dichiarare una variabile intera a e inizializzarla a 11.
  5. Dichiarare una variabile intera b e inizializzarla a 5.
  6. Dichiarazione di una variabile intera c.
  7. Stampa il valore dell'operazione a + b insieme ad altro testo sulla console.
  8. Stampa il valore dell'operazione ab insieme ad altro testo sulla console.
  9. Stampa del valore dell'operazione a * b insieme ad altro testo sulla console.
  10. Stampa il valore dell'operazione a / b insieme ad altro testo sulla console.
  11. Stampa del valore dell'operazione a% b insieme ad altro testo sulla console.
  12. Stampa del valore dell'operazione a ++ insieme ad altro testo sulla console.
  13. Stampa del valore dell'operazione a-- insieme ad altro testo sulla console.
  14. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  15. Fine del corpo della funzione main ().

Operatori relazionali

Questi tipi di operatori eseguono confronti sugli operandi. Ad esempio, potrebbe essere necessario sapere quale operando è maggiore dell'altro o minore dell'altro. Loro includono:

Descrizione

Operatore Descrizione
== uguale a operatore. Verifica l'uguaglianza di due valori di operandi.
! = non uguale a operatore Verifica l'uguaglianza di due valori di operandi.
> ottimo di operatore Controlla se il valore dell'operando sinistro è maggiore del valore dell'operando destro.
Controlla se il valore dell'operando sinistro è minore del valore dell'operando destro.
> = operatore maggiore o uguale a Controlla se il valore dell'operando sinistro è maggiore o uguale al valore dell'operando destro.
<= operatore minore o uguale a. Controlla se il valore dell'operando sinistro è minore o uguale al valore dell'operando destro.

Per esempio:

#include using namespace std;int main() {int a = 11;int b = 5;cout << "a=11, b=5" << endl;if (a == b) {cout << "a == b is true" << endl;}else {cout << " a == b is false" << endl;}if (a < b) {cout << "a < b is true" << endl;}else {cout << "a < b is false" << endl;}if (a> b) {cout << "a> b is true" << endl;}else {cout << "a> b is false" << endl;}return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma. La {segna l'inizio del corpo della funzione main ().
  4. Dichiarare una variabile intera a e inizializzarla a 11.
  5. Dichiarare una variabile intera b e inizializzarla a 5.
  6. Stampa del testo sulla console che indica i valori delle variabili a e b.
  7. Eseguendo l'operazione aritmetica, a == b in un'istruzione decisionale if per sapere se è vero o falso. La {segna l'inizio del corpo dell'istruzione if.
  8. Testo da stampare sulla console se l'operazione a == b è vera. Endl è una parola chiave C ++ per end line. Spinge il cursore per avviare la stampa nella riga successiva. Il} segna la fine del corpo dell'istruzione if.
  9. L'altra parte dell'istruzione if di cui sopra. Indica cosa fare se l'operazione a == b è falsa.
  10. Testo da stampare sulla console se l'operazione a == b è falsa. Endl è una parola chiave C ++ per end line. Spinge il cursore per avviare la stampa nella riga successiva. Il} segna la fine del corpo dell'istruzione else.
  11. Eseguendo l'operazione aritmetica, a
  12. Testo da stampare sulla console se l'operazione a
  13. L'altra parte dell'istruzione if di cui sopra. Indica cosa fare se l'operazione a
  14. Testo da stampare sulla console se l'operazione a
  15. Eseguire l'operazione aritmetica a> b in un'istruzione decisionale if per sapere se è vera o falsa. La {segna l'inizio del corpo dell'istruzione if.
  16. Testo da stampare sulla console se l'operazione a> b è vera. Endl è una parola chiave C ++ per end line. Spinge il cursore per avviare la stampa nella riga successiva. Il} segna la fine del corpo dell'istruzione if.
  17. L'altra parte dell'istruzione if di cui sopra. Indica cosa fare se l'operazione a> b è falsa.
  18. Testo da stampare sulla console se l'operazione a> b è falsa. Endl è una parola chiave C ++ per end line. Spinge il cursore per avviare la stampa nella riga successiva. Il} segna la fine del corpo dell'istruzione else.
  19. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  20. Fine del corpo della funzione main ().

Operatori logici

Gli operatori logici combinano due / più vincoli / condizioni. Gli operatori logici completano anche la valutazione della condizione originale in esame. Loro includono:

Operatore Descrizione
&& Operatore AND logico. La condizione è vera se entrambi gli operandi non sono zero.
|| operatore OR logico. La condizione è vera se uno degli operandi è diverso da zero.
! operatore NOT logico. Inverte lo stato logico dell'operando. Se l'operando è vero, il! l'operatore lo rende falso.

Per esempio:

#include using namespace std;int main(){int a = 5, b = 2, c = 6, d = 4;if (a == b && c> d)cout << "a equals to b AND c is greater than d\n";elsecout << "AND operation returned false\n";if (a == b || c> d)cout << "a equals to b OR c is greater than d\n";elsecout << "Neither a is equal to b nor c is greater than d\n";if (!b)cout << "b is zero\n";elsecout << "b is not zero";return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma.
  4. La {segna l'inizio del corpo della funzione main ().
  5. Dichiarando 4 variabili intere a, b, ced e assegnando loro valori diversi.
  6. Utilizzo dell'operatore && (AND) all'interno dell'istruzione if. Unisce due condizioni, il valore di a è uguale al valore di be, il valore di a è maggiore del valore di b. La prima condizione è falsa, la seconda condizione è vera. False && true è False, quindi il risultato di if è falso.
  7. Testo da stampare sulla console se l'istruzione if sopra è vera. Questo non verrà eseguito.
  8. Parte da eseguire se l'istruzione if di cui sopra è falsa.
  9. Testo da stampare sulla console se l'istruzione if è falsa. Questo verrà eseguito.
  10. Utilizzando || Operatore (OR) all'interno di un'istruzione if. Unisce due condizioni, il valore di a è uguale al valore di be, il valore di a è maggiore del valore di b. La prima condizione è falsa, la seconda condizione è vera. False || true è True, quindi il risultato di if è vero.
  11. Testo da stampare sulla console se l'istruzione if sopra è vera. Questo verrà eseguito.
  12. Parte da eseguire se l'istruzione if di cui sopra è falsa.
  13. Testo da stampare sulla console se l'istruzione if è falsa. Questo non verrà eseguito.
  14. Verifica se il valore della variabile è 0.
  15. Testo da stampare sulla console se l'istruzione if sopra è vera. Questo non verrà eseguito.
  16. Parte da eseguire se l'istruzione if di cui sopra è falsa.
  17. Testo da stampare sulla console se l'istruzione if è falsa. Questo verrà eseguito.
  18. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  19. Fine del corpo della funzione main ().

Operatori bit per bit

Gli operatori bit per bit eseguono operazioni a livello di bit sugli operandi. Innanzitutto, gli operatori vengono convertiti a livello di bit, quindi le operazioni vengono eseguite sugli operandi. Quando le operazioni aritmetiche come l'addizione e la sottrazione vengono eseguite a livello di bit, i risultati possono essere ottenuti più rapidamente. Loro includono:

Operatore Descrizione
& (AND bit per bit). Richiede 2 numeri (operandi) quindi esegue AND su ogni bit di due numeri. Se entrambi sono 1, AND restituisce 1, altrimenti 0.
| (OR bit per bit) Accetta 2 numeri (operandi) quindi esegue OR su ogni bit di due numeri. Restituisce 1 se uno dei bit è 1.
(lo XOR bit per bit) Accetta 2 numeri (operandi) quindi esegue XOR su ogni bit di 2 numeri. Restituisce 1 se entrambi i bit sono diversi.
<< (spostamento a sinistra) Prende due numeri, quindi sposta a sinistra i bit del primo operando. Il secondo operando determina le posizioni totali da spostare.
>> (spostamento a destra) Prende due numeri, quindi sposta a destra i bit del primo operando. Il secondo operando determina il numero di posizioni da spostare.
~ (bit per bit NON). Prende il numero, quindi inverte tutti i suoi bit.
#include using namespace std;int main() {unsigned int p = 60; // 60 = 0011 1100unsigned int q = 13; // 13 = 0000 1101int z = 0;z = p & q;cout << "p&q is : " << z << endl; // 12 = 0000 1100z = p | q;cout << "p|q is : " << z << endl; // 61 = 0011 1101z = p q;cout << "p^q is : " << z << endl; // 49 = 0011 0001z = ~p;cout << "~p is : " << z << endl; // -61 = 1100 0011z = p << 2;cout << "p<<2 is: " << z << endl; // 240 = 1111 0000z = p>> 2;cout << "p>>2 is : " << z << endl; // 15 = 0000 1111return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma. La {segna l'inizio del corpo della funzione main ().
  4. Dichiarare una variabile intera senza segno p e assegnargli un valore di 60, che è 0011 1100 in binario.
  5. Dichiarare una variabile intera senza segno q e assegnargli un valore di 13, che è 0000 1101 in binario.
  6. Dichiarare una variabile intera ze inizializzarla a 0.
  7. Esecuzione dell'operazione & (AND) bit per bit sulle variabili peq e memorizzazione del risultato nella variabile z.
  8. Stampa il risultato dell'operazione di cui sopra sulla console insieme ad altro testo.
  9. Eseguendo il bit a bit | Operazione (OR) sulle variabili peq e memorizzazione del risultato nella variabile z.
  10. Stampa il risultato dell'operazione di cui sopra sulla console insieme ad altro testo.
  11. Esecuzione dell'operazione (XOR) bit per bit sulle variabili peq e memorizzazione del risultato nella variabile z.
  12. Stampa il risultato dell'operazione di cui sopra sulla console insieme ad altro testo.
  13. Esecuzione dell'operazione bit per bit ~ (NOT) sulle variabili peq e memorizzazione del risultato nella variabile z.
  14. Stampa il risultato dell'operazione di cui sopra sulla console insieme ad altro testo.
  15. Esecuzione dell'operazione di spostamento a sinistra sulla variabile p e memorizzazione del risultato nella variabile z.
  16. Stampa il risultato dell'operazione di cui sopra sulla console insieme ad altro testo.
  17. Esecuzione dell'operazione di spostamento a destra sulla variabile p e memorizzazione del risultato nella variabile z.
  18. Stampa il risultato dell'operazione di cui sopra sulla console insieme ad altro testo.
  19. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  20. Fine del corpo della funzione main ().

Operatori di assegnazione

Gli operatori di assegnazione assegnano valori alle variabili. L'operando / variabile viene aggiunto al lato sinistro dell'operatore mentre il valore viene aggiunto al lato destro dell'operatore. La variabile e il valore devono appartenere allo stesso tipo di dati, altrimenti il ​​compilatore C ++ genererà un errore. Per esempio:

x = 5;

Nell'esempio precedente, x è la variabile / operando, = è l'operatore di assegnazione mentre 5 è il valore. Ecco i popolari operatori di assegnazione in C ++:

Operatore Descrizione
= (operatore di assegnazione semplice) Assegna il valore a destra alla variabile a sinistra.
+ = (Aggiungi operatore di assegnazione AND) Prima aggiunge il valore dell'operando sinistro al valore dell'operando destro, quindi assegna il risultato alla variabile a sinistra.
- = (Sottrai AND operatore di assegnazione) Prima sottrae il valore dell'operando destro dal valore dell'operando sinistro, quindi assegna il risultato alla variabile a sinistra.
* = (Moltiplica AND operatore di assegnazione) Prima moltiplica il valore dell'operando sinistro con il valore dell'operando destro, quindi assegna il risultato alla variabile a sinistra.
/ = (Operatore di assegnazione AND divisione) Prima divide il valore dell'operando sinistro per il valore dell'operando destro, quindi assegna il risultato alla variabile a sinistra.

Per esempio:

#include using namespace std;int main(){int x = 5;cout << "Initial value of x is " << x << "\n";x += 5;cout << "x += 5 gives : << x << "\n";x -= 5;cout << "x -= 5 gives : " << x << "\n";x *= 5;cout << "x *= 5 gives : << x << "\n";x /= 5;cout << "x /= 5 gives : " << x << "\n";return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma.
  4. La {segna l'inizio del corpo della funzione main ().
  5. Dichiarare una variabile intera x e assegnargli un valore di 5.
  6. Stampa del valore della variabile x insieme ad altro testo sulla console. \ N è un nuovo carattere di riga. Sposta il cursore sulla riga successiva durante la stampa.
  7. Aggiunta di 5 al valore della variabile x e assegnazione del risultato alla variabile x.
  8. Stampa del valore della variabile x sulla console insieme ad altro testo.
  9. Sottraendo 5 dal valore di x e assegnando il risultato alla variabile x.
  10. Stampa del valore della variabile x sulla console insieme ad altro testo.
  11. Moltiplicando il valore della variabile x per 5 e assegnando il risultato alla variabile x.
  12. Stampa del valore della variabile x sulla console insieme ad altro testo.
  13. Dividendo il valore della variabile x per 5 e assegnando il risultato alla variabile x.
  14. Stampa del valore della variabile x sulla console insieme ad altro testo.
  15. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  16. Fine del corpo della funzione main ().

Operatore Varie

Parliamo di altri operatori supportati da C ++:

dimensione dell'operatore

Questo operatore determina la dimensione di una variabile. Utilizzare l'operatore sizeof per determinare la dimensione di un tipo di dati. Per esempio:

#include using namespace std;int main() {cout<<"Size of int : "<< sizeof(int) << "\n";cout<<"Size of char : " << sizeof(char) << "\n";cout<<"Size of float : " << sizeof(float) << "\n";cout<<"Size of double : " << sizeof(double) << "\n";return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma. La {segna l'inizio del corpo della funzione main ().
  4. Determinare la dimensione del tipo di dati intero utilizzando sizeof operator e stamparlo insieme ad altro testo sulla console.
  5. Determinare la dimensione del tipo di dati carattere utilizzando sizeof operator e stamparlo insieme ad altro testo sulla console.
  6. Determinare la dimensione del tipo di dati float utilizzando sizeof operator e stamparlo insieme ad altro testo sulla console.
  7. Determinare la dimensione del tipo di dati float utilizzando sizeof operator e stamparlo insieme ad altro testo sulla console.
  8. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  9. Fine del corpo della funzione main ().

Operatore virgola

L'operatore virgola (,) attiva l'esecuzione di una sequenza di operazioni. Esprime il primo operando e scarta il risultato. Successivamente, valuta il secondo operando e restituisce il valore e il tipo.

#include using namespace std;int main() {int x, y;y = 100;x = (y++, y + 10, 99 + y);cout << x;return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma. La {segna l'inizio del corpo della funzione main ().
  4. Dichiarare due variabili intere x e y.
  5. Assegnando la variabile ya valore 100.
  6. Incremento del valore di y e assegnazione del risultato alla variabile x. Inizia con y a 100, quindi lo incrementa a 101 (y ++). Successivamente, y viene aggiunto a 10. Infine, y, sempre a 101, viene aggiunto a 99, dando 200. x ora è 200.
  7. Stampa del valore della variabile x sulla console.
  8. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  9. Fine del corpo della funzione main ().

Operatore condizionale

Questo operatore valuta una condizione e agisce in base al risultato della valutazione.

Sintassi:

Condition ? Expression2 : Expression3;

Parametri:

  • La Condizione è la condizione da valutare.
  • Expression1 è l'espressione da eseguire se la condizione è vera.
  • Expression3 è l'espressione da eseguire se la condizione è falsa.

Per esempio:

#include using namespace std;int main() {int a = 1, b;b = (a < 10) ? 2 : 5;cout << "value of b: " << b << endl;return 0;}

Produzione:

Ecco uno screenshot del codice:

Spiegazione del codice:

  1. Includere il file di intestazione iostream nel nostro codice. Ci permetterà di leggere e scrivere sulla console.
  2. Compreso lo spazio dei nomi std in modo da usare le sue classi e funzioni senza chiamarlo.
  3. Chiamando la funzione main () all'interno della quale va aggiunta la logica del programma. La {segna l'inizio del corpo della funzione main ().
  4. Dichiarare due variabili intere a e b. Alla variabile a è stato assegnato il valore 1.
  5. Assegnazione di valore alla variabile b. Se la variabile a è minore di 10, a b verrà assegnato il valore 2, altrimenti b verrà assegnato il valore 5.
  6. Stampa del valore della variabile b sulla console insieme ad altro testo.
  7. La funzione main () dovrebbe restituire un valore se il programma funziona correttamente.
  8. Fine del corpo della funzione main ().

Precedenza degli operatori

Una singola operazione può avere più di un operatore. In tal caso, la precedenza degli operatori determina quello valutato per primo.

Il seguente elenco mostra la precedenza degli operatori in C ++, con precedenza decrescente da sinistra a destra:

(), [], *, /,%, +/-, <<, >>, ==,! =, ^, |, &&, ||,?:, =, + =, - =, 8 = , / =

Sommario:

  • Gli operatori sono simboli per eseguire operazioni logiche e aritmetiche.
  • Gli operatori aritmetici ci aiutano a eseguire varie operazioni aritmetiche sugli operandi.
  • Gli operatori relazionali ci aiutano a eseguire varie operazioni di confronto sugli operandi.
  • Gli operatori logici ci aiutano a eseguire varie operazioni logiche sugli operandi.
  • Gli operatori bit a bit ci aiutano a eseguire operazioni bit a bit sugli operandi.
  • Gli operatori di assegnazione ci aiutano a eseguire varie operazioni aritmetiche sugli operandi.
  • L'operatore sizeof restituisce la dimensione di una variabile o di un tipo di dati.
  • L'operatore virgola esegue una sequenza di operazioni.
  • L'operatore condizionale valuta una condizione e agisce in base al risultato.