C ++ Operators met voorbeelden

Inhoudsopgave:

Anonim

Wat zijn operators?

Een operator is een symbool dat wordt gebruikt voor het uitvoeren van bewerkingen op operanden. Een operator bedient operanden. De bewerkingen kunnen wiskundig of logisch zijn. Er zijn verschillende soorten operators in C ++ voor het uitvoeren van verschillende bewerkingen.

Overweeg de volgende bewerking:

a = x + y;

In de bovenstaande verklaring zijn x en y de operanden, terwijl + een opteloperator is. Wanneer de C ++ - compiler de bovenstaande instructie tegenkomt, voegt deze x en y toe en slaat het resultaat op in variabele a.

In deze C ++ Tutorial leert u:

  • Wat zijn operators?
  • Rekenkundige operatoren
  • Relationele operators
  • Logische operators
  • Bitwise-operators
  • Toewijzingsoperatoren
  • Diverse operator
    • sizeof operator
    • Komma-operator
    • Voorwaardelijke operator
  • Voorrang van operators

Rekenkundige operatoren

Dit zijn de soorten operatoren die worden gebruikt voor het uitvoeren van wiskundige / rekenkundige bewerkingen. Ze bevatten:

Operator Omschrijving
+ toevoeging operator Voegt toe aan operanden.
- aftrekkingsoperator Trekt de 2e operand af van de 1e operand.
* vermenigvuldigingsoperator Vermenigvuldigt 2 operanden.
/ divisie-operator. Deelt de teller door de noemer.
% modulus-operator Retourneert het restant na deling.
++ increment-operator Verhoogt een geheel getal met 1.
- afnemende operator. Verlaagt een geheel getal met 1.

Bijvoorbeeld:

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

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd. De {markeert het begin van de hoofdtekst van de functie main ().
  4. Een integervariabele a declareren en deze initialiseren op 11.
  5. Een integervariabele b declareren en deze initialiseren op 5.
  6. Declaratie van een integervariabele c.
  7. De waarde van bewerking a + b samen met andere tekst op de console afdrukken.
  8. De waarde van bewerking ab samen met andere tekst op de console afdrukken.
  9. De waarde van bewerking a * b afdrukken naast andere tekst op de console.
  10. De waarde van bewerking a / b afdrukken naast andere tekst op de console.
  11. Afdrukwaarde van bewerking a% b naast andere tekst op de console.
  12. De waarde van bewerking a ++ afdrukken naast andere tekst op de console.
  13. De waarde van bewerking a-- naast andere tekst op de console afdrukken.
  14. De functie main () moet een waarde retourneren als het programma goed werkt.
  15. Einde van de hoofdtekst van de functie main ().

Relationele operators

Dit soort operators maakt vergelijkingen op operanden. U moet bijvoorbeeld weten welke operand groter is dan de andere, of kleiner dan de andere. Ze bevatten:

Omschrijving

Operator Omschrijving
== gelijk aan operator. Controleert de gelijkheid van twee operandwaarden.
! = niet gelijk aan operator Controleert de gelijkheid van twee operandwaarden.
> geweldig dan operator Controleert of de waarde van de linker operand groter is dan de waarde van de rechter operand.
Controleert of de waarde van de linker operand kleiner is dan de waarde van de rechter operand.
> = groter dan of gelijk aan operator Controleert of de waarde van de linker operand groter is dan of gelijk is aan de waarde van de rechter operand.
<= kleiner dan of gelijk aan operator. Controleert of de waarde van de linker operand kleiner is dan of gelijk is aan de waarde van de rechter operand.

Bijvoorbeeld:

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

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd. De {markeert het begin van de hoofdtekst van de functie main ().
  4. Een integervariabele a declareren en deze initialiseren op 11.
  5. Een integervariabele b declareren en deze initialiseren op 5.
  6. Druk wat tekst af op de console met de waarden van variabelen a en b.
  7. Het uitvoeren van de rekenkundige bewerking, a == b in een if besluitvormingsverklaring om te weten of deze waar of onwaar is. De {markeert het begin van de body van de if-instructie.
  8. Tekst die op de console moet worden afgedrukt als de bewerking a == b waar is. De endl is een C ++ -zoekwoord voor de eindregel. Het duwt de cursor om het afdrukken op de volgende regel te starten. De} markeert het einde van de body van de if-instructie.
  9. Het andere deel van de bovenstaande if-verklaring. Het geeft aan wat te doen als de bewerking a == b onwaar is.
  10. Tekst die op de console moet worden afgedrukt als de bewerking a == b onwaar is. De endl is een C ++ -zoekwoord voor de eindregel. Het duwt de cursor om het afdrukken op de volgende regel te starten. De} markeert het einde van de body van de else-instructie.
  11. Het uitvoeren van de rekenkundige bewerking, a
  12. Tekst die op de console moet worden afgedrukt als de bewerking a
  13. Het andere deel van de bovenstaande if-verklaring. Het geeft aan wat te doen als de bewerking a
  14. Tekst die op de console moet worden afgedrukt als de bewerking a
  15. Het uitvoeren van de rekenkundige bewerking a> b in een if besluitvormingsverklaring om te weten of deze waar of onwaar is. De {markeert het begin van de body van de if-instructie.
  16. Tekst die op de console moet worden afgedrukt als de bewerking a> b waar is. De endl is een C ++ -zoekwoord voor de eindregel. Het duwt de cursor om het afdrukken op de volgende regel te starten. De} markeert het einde van de body van de if-instructie.
  17. Het andere deel van de bovenstaande if-verklaring. Het geeft aan wat te doen als de bewerking a> b onwaar is.
  18. Tekst die op de console moet worden afgedrukt als de bewerking a> b onwaar is. De endl is een C ++ -zoekwoord voor de eindregel. Het duwt de cursor om het afdrukken op de volgende regel te starten. De} markeert het einde van de body van de else-instructie.
  19. De functie main () moet een waarde retourneren als het programma goed werkt.
  20. Einde van de hoofdtekst van de functie main ().

Logische operators

De logische operatoren combineren twee / meer beperkingen / voorwaarden. Logische operators vormen ook een aanvulling op de evaluatie van de oorspronkelijke conditie die wordt overwogen. Ze bevatten:

Operator Omschrijving
&& logische AND-operator. De voorwaarde is waar als beide operanden niet nul zijn.
​ logische OR-operator. De voorwaarde is waar als een van de operanden niet nul is.
​ logische NOT-operator. Het keert de logische toestand van de operand om. Als de operand waar is, is de! operator maakt het onwaar.

Bijvoorbeeld:

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

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd.
  4. De {markeert het begin van de hoofdtekst van de functie main ().
  5. 4 integer variabelen a, b, c en d declareren en er verschillende waarden aan toekennen.
  6. Met behulp van de && (AND) operator in de if-instructie. Het voegt twee voorwaarden samen, waarde van a is gelijk aan waarde van b en waarde van a is groter dan waarde van b. Eerste voorwaarde is onwaar, tweede voorwaarde is waar. False && true is False, vandaar dat de uitkomst van if false is.
  7. Tekst die op de console moet worden afgedrukt als de bovenstaande if-instructie waar is. Dit wordt niet uitgevoerd.
  8. Deel dat moet worden uitgevoerd als de bovenstaande if-instructie onwaar is.
  9. Tekst die op de console moet worden afgedrukt als de if-instructie false is. Dit wordt uitgevoerd.
  10. Met behulp van de || (OR) -operator binnen een if-instructie. Het voegt twee voorwaarden samen, waarde van a is gelijk aan waarde van b en waarde van a is groter dan waarde van b. Eerste voorwaarde is onwaar, tweede voorwaarde is waar. False || true is True, vandaar dat de uitkomst van if waar is.
  11. Tekst die op de console moet worden afgedrukt als de bovenstaande if-instructie waar is. Dit wordt uitgevoerd.
  12. Deel dat moet worden uitgevoerd als de bovenstaande if-instructie onwaar is.
  13. Tekst die op de console moet worden afgedrukt als de if-instructie false is. Dit wordt niet uitgevoerd.
  14. Controleren of de waarde van de variabele 0 is.
  15. Tekst die op de console moet worden afgedrukt als de bovenstaande if-instructie waar is. Dit wordt niet uitgevoerd.
  16. Deel dat moet worden uitgevoerd als de bovenstaande if-instructie onwaar is.
  17. Tekst die op de console moet worden afgedrukt als de if-instructie false is. Dit wordt uitgevoerd.
  18. De functie main () moet een waarde retourneren als het programma goed werkt.
  19. Einde van de hoofdtekst van de functie main ().

Bitwise-operators

Bitwise-operators voeren bewerkingen op bitniveau uit op operanden. Eerst worden operators geconverteerd naar bitniveau en vervolgens worden bewerkingen uitgevoerd op de operanden. Wanneer rekenkundige bewerkingen zoals optellen en aftrekken op bitniveau worden uitgevoerd, kunnen resultaten sneller worden bereikt. Ze bevatten:

Operator Omschrijving
& (bitsgewijze EN). Er zijn 2 getallen (operanden) nodig en voert vervolgens EN uit op elk bit van twee getallen. Als beide 1 zijn, geeft AND 1 terug, anders 0.
​ (bitsgewijze OF) Neemt 2 getallen (operanden) en voert vervolgens OR uit op elk bit van twee getallen. Het geeft 1 terug als een van de bits 1 is.
(de bitsgewijze XOR) Neemt 2 getallen (operanden) en voert vervolgens XOR uit op elk bit van 2 getallen. Het geeft 1 terug als beide bits verschillend zijn.
<< (verschuiving naar links) Neemt twee getallen en verschuift naar links de bits van de eerste operand. De tweede operand bepaalt het totale aantal te verschuiven plaatsen.
>> (verschuiving naar rechts) Neemt twee getallen en verschuift naar rechts de bits van de eerste operand. De tweede operand bepaalt het aantal plaatsen dat moet worden verschoven.
~ (bitsgewijs NIET). Neemt nummer en keert vervolgens alle bits om.
#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;}

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd. De {markeert het begin van de hoofdtekst van de functie main ().
  4. Een ongetekende integer-variabelen p declareren en er een waarde van 60 aan toewijzen, dat wil zeggen 0011 1100 in binair getal.
  5. Een ongetekende integer-variabelen q declareren en er een waarde van 13 aan toewijzen, dat wil zeggen 0000 1101 in binair getal.
  6. Een integervariabele z declareren en deze initialiseren op 0.
  7. De bitsgewijze & (AND) -bewerking uitvoeren op variabelen p en q en het resultaat opslaan in variabele z.
  8. Het resultaat van de bovenstaande bewerking op de console samen met andere tekst afdrukken.
  9. De bitsgewijze | (OR) bewerking op variabelen p en q en het resultaat opslaan in variabele z.
  10. Het resultaat van de bovenstaande bewerking op de console samen met andere tekst afdrukken.
  11. De bitsgewijze bewerking (XOR) uitvoeren op variabelen p en q en het resultaat opslaan in variabele z.
  12. Het resultaat van de bovenstaande bewerking op de console samen met andere tekst afdrukken.
  13. De bitsgewijze ~ (NOT) bewerking uitvoeren op variabelen p en q en het resultaat opslaan in variabele z.
  14. Het resultaat van de bovenstaande bewerking op de console samen met andere tekst afdrukken.
  15. Het uitvoeren van de linker ploegendienst op variabele p en het opslaan van het resultaat in variabele z.
  16. Het resultaat van de bovenstaande bewerking op de console samen met andere tekst afdrukken.
  17. De rechterploegoperatie uitvoeren op variabele p en het resultaat opslaan in variabele z.
  18. Het resultaat van de bovenstaande bewerking op de console samen met andere tekst afdrukken.
  19. De functie main () moet een waarde retourneren als het programma goed werkt.
  20. Einde van de hoofdtekst van de functie main ().

Toewijzingsoperatoren

Toewijzingsoperatoren wijzen waarden toe aan variabelen. De operand / variabele wordt aan de linkerkant van de operator toegevoegd, terwijl de waarde aan de rechterkant van de operator wordt toegevoegd. De variabele en de waarde moeten tot hetzelfde gegevenstype behoren, anders veroorzaakt de C ++ - compiler een fout. Bijvoorbeeld:

x = 5;

In het bovenstaande voorbeeld is x de variabele / operand, = is de toewijzingsoperator en 5 is de waarde. Dit zijn de populaire toewijzingsoperatoren in C ++:

Operator Omschrijving
= (eenvoudige toewijzingsoperator) Het wijst waarde aan de rechterkant toe aan variabele aan de linkerkant.
+ = (EN-toewijzingsoperator toevoegen) Het voegt eerst de waarde van de linker operand toe aan de waarde van de rechter operand en wijst vervolgens het resultaat toe aan de variabele aan de linkerkant.
- = (Operator voor EN-toewijzing aftrekken) Het trekt eerst de waarde van de rechter operand af van de waarde van de linker operand en wijst vervolgens het resultaat toe aan de variabele aan de linkerkant.
* = (Operator voor vermenigvuldigen EN toewijzen) Het vermenigvuldigt eerst de waarde van de linker operand met de waarde van de rechter operand en wijst vervolgens het resultaat toe aan de variabele aan de linkerkant.
/ = (Operator voor divisie EN toewijzing) Het deelt eerst de waarde van de linker operand door de waarde van de rechter operand en wijst vervolgens het resultaat toe aan de variabele aan de linkerkant.

Bijvoorbeeld:

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

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd.
  4. De {markeert het begin van de hoofdtekst van de functie main ().
  5. Een integer-variabelen x declareren en er een waarde van 5 aan toewijzen.
  6. De waarde van variabele x samen met andere tekst op de console afdrukken. De \ n is een nieuw lijnteken. Het verplaatst de cursor naar de volgende regel tijdens het afdrukken.
  7. 5 optellen bij de waarde van variabele x en resultaat toewijzen aan variabele x.
  8. De waarde van variabele x op de console samen met andere tekst afdrukken.
  9. 5 aftrekken van waarde van x en resultaat toewijzen aan variabele x.
  10. De waarde van variabele x op de console samen met andere tekst afdrukken.
  11. De waarde van variabele x vermenigvuldigen met 5 en het resultaat toewijzen aan variabele x.
  12. De waarde van variabele x op de console samen met andere tekst afdrukken.
  13. De waarde van variabele x delen door 5 en het resultaat toewijzen aan variabele x.
  14. De waarde van variabele x op de console samen met andere tekst afdrukken.
  15. De functie main () moet een waarde retourneren als het programma goed werkt.
  16. Einde van de hoofdtekst van de functie main ().

Diverse operator

Laten we andere operators bespreken die worden ondersteund door C ++:

sizeof operator

Deze operator bepaalt de grootte van een variabele. Gebruik sizeof-operator om de grootte van een gegevenstype te bepalen. Bijvoorbeeld:

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

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd. De {markeert het begin van de hoofdtekst van de functie main ().
  4. De grootte van het gegevenstype integer bepalen met de operator sizeof en deze samen met andere tekst op de console afdrukken.
  5. De grootte van het gegevenstype voor tekens bepalen met de operator sizeof en deze samen met andere tekst op de console afdrukken.
  6. De grootte van het gegevenstype float bepalen met de operator sizeof en deze samen met andere tekst op de console afdrukken.
  7. De grootte van het gegevenstype float bepalen met de operator sizeof en deze samen met andere tekst op de console afdrukken.
  8. De functie main () moet een waarde retourneren als het programma goed werkt.
  9. Einde van de hoofdtekst van de functie main ().

Komma-operator

De komma-operator (,) activeert de uitvoering van een reeks bewerkingen. Het drukt de eerste operand uit en verwijdert het resultaat. Vervolgens evalueert het de tweede operand en retourneert het de waarde en het type.

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

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd. De {markeert het begin van de hoofdtekst van de functie main ().
  4. Twee integer-variabelen x en y declareren.
  5. De variabele y een waarde van 100 toewijzen.
  6. Waarde van y verhogen en resultaat toewijzen aan variabele x. Het begint met y bij 100 en verhoogt het vervolgens tot 101 (y ++). Vervolgens wordt y opgeteld bij 10. Ten slotte wordt y, nog steeds op 101, opgeteld bij 99, wat 200 oplevert. X is nu 200.
  7. Afdrukwaarde van variabele x op de console.
  8. De functie main () moet een waarde retourneren als het programma goed werkt.
  9. Einde van de hoofdtekst van de functie main ().

Voorwaardelijke operator

Deze operator evalueert een conditie en handelt op basis van de uitkomst van de evaluatie.

Syntaxis:

Condition ? Expression2 : Expression3;

Parameters:

  • De voorwaarde is de voorwaarde die moet worden geëvalueerd.
  • Expression1 is de uitdrukking die moet worden uitgevoerd als de voorwaarde waar is.
  • Expression3 is de uitdrukking die moet worden uitgevoerd als voorwaarde onwaar is.

Bijvoorbeeld:

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

Uitgang:

Hier is een screenshot van de code:

Code Verklaring:

  1. Inclusief het iostream-headerbestand in onze code. Hiermee kunnen we lezen van en schrijven naar de console.
  2. Inclusief de std-naamruimte om zijn klassen en functies te gebruiken zonder deze aan te roepen.
  3. De main () functie aanroepen waarbinnen de logica van het programma moet worden toegevoegd. De {markeert het begin van de hoofdtekst van de functie main ().
  4. Twee integervariabelen a en b declareren. Variabele a heeft de waarde 1 gekregen.
  5. Waarde toewijzen aan variabele b. Als variabele a kleiner is dan 10, krijgt b de waarde 2 toegewezen, anders krijgt b de waarde 5.
  6. De waarde van variabele b op de console samen met andere tekst afdrukken.
  7. De functie main () moet een waarde retourneren als het programma goed werkt.
  8. Einde van de hoofdtekst van de functie main ().

Voorrang van operators

Een enkele bewerking kan meer dan één operator hebben. In dat geval bepaalt de prioriteit van de operator degene die als eerste wordt geëvalueerd.

De volgende lijst toont de prioriteit van operators in C ++, met afnemende prioriteit van links naar rechts:

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

Overzicht:

  • Operatoren zijn symbolen voor het uitvoeren van logische en rekenkundige bewerkingen.
  • Rekenkundige operatoren helpen ons bij het uitvoeren van verschillende rekenkundige bewerkingen op operanden.
  • Relationele operatoren helpen ons bij het uitvoeren van verschillende vergelijkingsbewerkingen op operanden.
  • Logische operators helpen ons bij het uitvoeren van verschillende logische bewerkingen op operanden.
  • Bitwise-operators helpen ons bitgewijze bewerkingen op operanden uit te voeren.
  • Toewijzingsoperatoren helpen ons bij het uitvoeren van verschillende rekenkundige bewerkingen op operanden.
  • De operator sizeof retourneert de grootte van een variabele of gegevenstype.
  • De komma-operator voert een reeks bewerkingen uit.
  • De voorwaardelijke operator evalueert een conditie en handelt op basis van de uitkomst.