C ++ operatører med eksempler

Innholdsfortegnelse:

Anonim

Hva er operatører?

En operatør er et symbol som brukes til å utføre operasjoner på operander. En operatør opererer operander. Operasjonene kan være matematiske eller logiske. Det finnes forskjellige typer operatører i C ++ for å utføre forskjellige operasjoner.

Vurder følgende handling:

a = x + y;

I utsagnet ovenfor er x og y operandene mens + er en tilleggsoperator. Når C ++ kompilatoren møter utsagnet ovenfor, vil det legge til x og y og lagre resultatet i variabel a.

I denne C ++ opplæringen vil du lære:

  • Hva er operatører?
  • Aritmetiske operatører
  • Relasjonsoperatører
  • Logiske operatører
  • Bitvise operatører
  • Oppdragsoperatører
  • Diverse operatører
    • størrelsen på operatøren
    • Kommaoperatør
    • Betinget operatør
  • Operatørens forrang

Aritmetiske operatører

De er typene operatører som brukes til å utføre matematiske / aritmetiske operasjoner. De inkluderer:

Operatør Beskrivelse
+ tilleggsoperatør Legger til operander.
- subtraksjonsoperatør Subtraherer 2 nd operand fra en st operand.
* multiplikasjonsoperator Multipliserer 2 operander.
/ divisjonsoperatør. Deler teller etter nevner.
% modulus operator Returnerer resten etter divisjon.
++ økningsoperatør Øker et heltall med 1.
- reduksjon operatør. Reduserer et heltall med 1.

For eksempel:

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

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i. {Markerer starten på kroppen til hovedfunksjonen ().
  4. Deklarere en heltalsvariabel a og initialisere den til 11.
  5. Erklærer en heltalsvariabel b og initialiserer den til 5.
  6. Erklærer en heltalsvariabel c.
  7. Utskriftsverdi for operasjon a + b sammen med annen tekst på konsollen.
  8. Utskriftsverdi for operasjon ab sammen med annen tekst på konsollen.
  9. Utskriftsverdi for operasjon a * b ved siden av annen tekst på konsollen.
  10. Utskriftsverdi for operasjon a / b sammen med annen tekst på konsollen.
  11. Utskriftsverdi for operasjon a% b sammen med annen tekst på konsollen.
  12. Utskriftsverdi for drift a ++ sammen med annen tekst på konsollen.
  13. Utskriftsverdi for operasjon a - sammen med annen tekst på konsollen.
  14. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  15. Slutten av kroppen til hovedfunksjonen ().

Relasjonsoperatører

Denne typen operatører utfører sammenligninger på operander. For eksempel må du kanskje vite hvilken operand som er større enn den andre, eller mindre enn den andre. De inkluderer:

Beskrivelse

Operatør Beskrivelse
== lik operatør. Kontrollerer likhet mellom to operandverdier.
! = ikke lik operatøren Kontrollerer likhet mellom to operandverdier.
> flott enn operatør Kontrollerer om verdien av venstre operand er større enn verdien for høyre operand.
Kontrollerer om verdien av venstre operand er mindre enn verdien av høyre operand.
> = større enn eller lik operatør Kontrollerer om verdien av venstre operand er større enn eller lik verdien av høyre operand.
<= mindre enn eller lik operatøren. Kontrollerer om verdien av venstre operand er mindre enn eller lik verdien av høyre operand.

For eksempel:

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

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i. {Markerer starten på kroppen til hovedfunksjonen ().
  4. Deklarere en heltalsvariabel a og initialisere den til 11.
  5. Erklærer en heltalsvariabel b og initialiserer den til 5.
  6. Skrive ut tekst på konsollen med verdiene til variablene a og b.
  7. Utføre den aritmetiske operasjonen, a == b i en if beslutningsuttalelse for å vite om det er sant eller usant. {Markerer begynnelsen på kroppen til if-setningen.
  8. Tekst som skal skrives ut på konsollen hvis operasjonen a == b stemmer. Endl er et C ++ nøkkelord for sluttlinjen. Den skyver markøren for å starte utskriften i neste linje. } Markerer slutten på kroppen til if-setningen.
  9. Den andre delen av ovenstående hvis uttalelse. Det står hva du skal gjøre hvis operasjonen a == b er falsk.
  10. Tekst som skal skrives ut på konsollen hvis operasjonen a == b er feil. Endl er et C ++ nøkkelord for sluttlinjen. Den skyver markøren for å starte utskriften i neste linje. The} markerer slutten på kroppen til den andre uttalelsen.
  11. Utføre den aritmetiske operasjonen, a
  12. Tekst som skal skrives ut på konsollen hvis operasjonen a
  13. Den andre delen av ovenstående hvis uttalelse. Det står hva du skal gjøre hvis operasjonen a
  14. Tekst som skal skrives ut på konsollen hvis operasjonen a
  15. Utføre den aritmetiske operasjonen a> b i en if beslutningsuttalelse for å vite om det er sant eller usant. {Markerer begynnelsen på kroppen til if-setningen.
  16. Tekst som skal skrives ut på konsollen hvis operasjonen a> b stemmer. Endl er et C ++ nøkkelord for sluttlinjen. Den skyver markøren for å starte utskriften i neste linje. } Markerer slutten på kroppen til if-setningen.
  17. Den andre delen av ovenstående hvis uttalelse. Det står hva du skal gjøre hvis operasjonen a> b er falsk.
  18. Tekst som skal skrives ut på konsollen hvis operasjonen a> b er feil. Endl er et C ++ nøkkelord for sluttlinjen. Den skyver markøren for å starte utskriften i neste linje. The} markerer slutten på kroppen til den andre uttalelsen.
  19. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  20. Slutten av kroppen til hovedfunksjonen ().

Logiske operatører

De logiske operatørene kombinerer to / flere begrensninger / forhold. Logiske operatører utfyller også evaluering av den opprinnelige tilstanden som vurderes. De inkluderer:

Operatør Beskrivelse
&& logisk OG operatør. Betingelsen er sant hvis begge operandene ikke er null.
|| logisk ELLER operatør. Betingelsen gjelder hvis en av operandene ikke er null.
! logisk IKKE operatør. Det reverserer operandens logiske tilstand. Hvis operanden er sann, vil! operatøren gjør det falskt.

For eksempel:

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

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i.
  4. {Markerer starten på kroppen til hovedfunksjonen ().
  5. Deklarerer 4 heltallvariabler a, b, c og d og tildeler dem forskjellige verdier.
  6. Bruke && (AND) -operatøren inne i if-setningen. Den forbinder to forhold, verdien av a er lik verdien av b og verdien av a er større enn verdien av b. Den første tilstanden er falsk, den andre tilstanden er sant. Falske og sanne er falske, derfor er resultatet av hvis falskt.
  7. Tekst som skal skrives ut på konsollen hvis utsagnet ovenfor er sant. Dette blir ikke utført.
  8. Del som skal utføres hvis ovennevnte hvis uttalelse er falsk.
  9. Tekst som skal skrives ut på konsollen hvis if-setningen er falsk. Dette vil bli utført.
  10. Bruke || (OR) operatør i en if-uttalelse. Den forbinder to forhold, verdien av a er lik verdien av b og verdien av a er større enn verdien av b. Den første tilstanden er falsk, den andre tilstanden er sant. Falske || sant er sant, derfor er utfallet av hvis sant.
  11. Tekst som skal skrives ut på konsollen hvis utsagnet ovenfor er sant. Dette vil bli utført.
  12. Del som skal utføres hvis ovennevnte hvis uttalelse er falsk.
  13. Tekst som skal skrives ut på konsollen hvis if-setningen er falsk. Dette blir ikke utført.
  14. Kontrollerer om verdien av variabelen er 0.
  15. Tekst som skal skrives ut på konsollen hvis utsagnet ovenfor er sant. Dette blir ikke utført.
  16. Del som skal utføres hvis ovennevnte hvis uttalelse er falsk.
  17. Tekst som skal skrives ut på konsollen hvis if-setningen er falsk. Dette vil bli utført.
  18. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  19. Slutten av kroppen til hovedfunksjonen ().

Bitvise operatører

Bitvis operatører utfører operasjoner på bitnivå på operander. Først konverteres operatører til bitnivå, og operasjoner utføres på operandene. Når aritmetiske operasjoner som addisjon og subtraksjon gjøres på bitnivå, kan resultatene oppnås raskere. De inkluderer:

Operatør Beskrivelse
& (bitvis OG). Det tar to tall (operander) og utfører deretter AND på hver bit av to tall. Hvis begge er 1, returnerer AND 1, ellers 0.
| (bitvis ELLER) Tar to tall (operander) og utfører deretter ELLER på hver bit av to tall. Den returnerer 1 hvis en av bitene er 1.
(bitvis XOR) Tar to tall (operander) og utfører deretter XOR på hver bit av 2 tall. Den returnerer 1 hvis begge bitene er forskjellige.
<< (venstre skift) Tar to tall og deretter venstre skifter bitene til den første operanden. Den andre operanden bestemmer totalt antall steder å skifte.
>> (høyre skift) Tar to tall og deretter skifter biter av den første operanden til høyre. Den andre operanden bestemmer antall steder å skifte.
~ (bitvis IKKE). Tar nummer og inverterer deretter alle biter.
#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;}

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i. {Markerer starten på kroppen til hovedfunksjonen ().
  4. Erklærer et usignert heltallvariabler p og tildeler det en verdi på 60, ​​det vil si 0011 1100 i binær.
  5. Erklærer et usignert heltallvariabler q og tildeler det en verdi på 13, som er 0000 1101 i binær.
  6. Erklærer en heltallvariabel z og initialiserer den til 0.
  7. Utføre bitvis & (OG) -operasjon på variabler p og q og lagre resultatet i variabel z.
  8. Utskrift av resultatet av operasjonen ovenfor på konsollen sammen med annen tekst.
  9. Utføre bitvis | (OR) operasjon på variabler p og q og lagring av resultatet i variabel z.
  10. Utskrift av resultatet av operasjonen ovenfor på konsollen sammen med annen tekst.
  11. Utføre bitvis (XOR) operasjon på variabler p og q og lagre resultatet i variabel z.
  12. Utskrift av resultatet av operasjonen ovenfor på konsollen sammen med annen tekst.
  13. Utføre bitvis ~ (IKKE) operasjon på variabler p og q og lagre resultatet i variabel z.
  14. Utskrift av resultatet av operasjonen ovenfor på konsollen sammen med annen tekst.
  15. Utføre venstre skiftoperasjon på variabel p og lagre resultatet i variabel z.
  16. Utskrift av resultatet av operasjonen ovenfor på konsollen sammen med annen tekst.
  17. Utføre høyre skiftoperasjon på variabel p og lagre resultatet i variabel z.
  18. Utskrift av resultatet av operasjonen ovenfor på konsollen sammen med annen tekst.
  19. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  20. Slutten av kroppen til hovedfunksjonen ().

Oppdragsoperatører

Oppdragsoperatører tilordner verdier til variabler. Operand / variabel legges til operatørens venstre side mens verdien legges til operatørens høyre side. Variabelen og verdien må tilhøre samme datatype, ellers vil C ++ kompilatoren øke feilen. For eksempel:

x = 5;

I eksemplet ovenfor er x variabelen / operand, = er tildelingsoperatøren mens 5 er verdien. Her er de populære oppdragsoperatørene i C ++:

Operatør Beskrivelse
= (enkel oppdragsoperatør) Det tildeler verdi til høyre for variabel til venstre.
+ = (Legg til OG oppdragsoperatør) Det tilfører først verdi av venstre operand til verdien av høyre operand og tildeler deretter resultat til variabel til venstre.
- = (Trekk OG oppdragsoperatør) Den trekker først verdien av høyre operand fra verdien av venstre operand og tildeler deretter resultat til variabel til venstre.
* = (Multipliser OG oppdragsoperatør) Den multipliserer først verdien av venstre operand med verdien for høyre operand og tildeler deretter resultatet til variabel til venstre.
/ = (Divisjon OG oppdragsoperatør) Den deler først verdien av venstre operand med verdien av høyre operand og tildeler deretter resultatet til variabel til venstre.

For eksempel:

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

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i.
  4. {Markerer starten på kroppen til hovedfunksjonen ().
  5. Erklærer et heltallvariabler x og tildeler det verdien 5.
  6. Utskriftsverdi for variabel x sammen med annen tekst på konsollen. \ N er et nytt linjetegn. Den flytter markøren til neste linje når du skriver ut.
  7. Legger 5 til verdien av variabelen x og tilordner resultatet til variabelen x.
  8. Utskriftsverdi for variabel x på konsollen sammen med annen tekst.
  9. Trekker 5 fra verdien av x og tilordner resultatet til variabelen x.
  10. Utskriftsverdi for variabel x på konsollen sammen med annen tekst.
  11. Multipliser verdien av variabelen x med 5 og tildel resultat til variabel x.
  12. Utskriftsverdi for variabel x på konsollen sammen med annen tekst.
  13. Dele verdien av variabel x med 5 og tildele resultat til variabel x.
  14. Utskriftsverdi for variabel x på konsollen sammen med annen tekst.
  15. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  16. Slutten av kroppen til hovedfunksjonen ().

Diverse operatører

La oss diskutere andre operatører som støttes av C ++:

størrelsen på operatøren

Denne operatøren bestemmer størrelsen på en variabel. Bruk størrelse på operatøren for å bestemme størrelsen på en datatype. For eksempel:

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

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i. {Markerer starten på kroppen til hovedfunksjonen ().
  4. Bestemme størrelsen på heltal datatypen ved å bruke størrelse av operatoren og skrive den ut sammen med annen tekst på konsollen.
  5. Bestemme størrelsen på tegndatatypen ved å bruke størrelse på operatøren og skrive den ut sammen med annen tekst på konsollen.
  6. Bestemme størrelsen på flytedatatypen ved å bruke størrelse på operatøren og skrive den ut sammen med annen tekst på konsollen.
  7. Bestemme størrelsen på flytedatatypen ved å bruke størrelse på operatøren og skrive den ut sammen med annen tekst på konsollen.
  8. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  9. Slutten av kroppen til hovedfunksjonen ().

Kommaoperatør

Kommaoperatøren (,) utløser ytelsen til en sekvens av operasjoner. Den uttrykker første operand og forkaster resultatet. Deretter evaluerer den andre operanden og returnerer verdien og typen.

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

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i. {Markerer starten på kroppen til hovedfunksjonen ().
  4. Deklarerer to heltallvariabler x og y.
  5. Tilordner den variable ya-verdien på 100.
  6. Økende verdi av y og tilordne resultat til variabel x. Det starter med y på 100, og øker det til 101 (y ++). Deretter blir y lagt til 10. Til slutt blir y, fremdeles ved 101, lagt til 99, noe som gir 200. x er nå 200.
  7. Utskriftsverdi for variabel x på konsollen.
  8. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  9. Slutten av kroppen til hovedfunksjonen ().

Betinget operatør

Denne operatøren evaluerer en tilstand og handler ut fra resultatet av evalueringen.

Syntaks:

Condition ? Expression2 : Expression3;

Parametere:

  • Tilstanden er tilstanden som skal evalueres.
  • Uttrykk1 er uttrykket som skal utføres hvis tilstanden er sann.
  • Expression3 er uttrykket som skal utføres hvis betingelsen er falsk.

For eksempel:

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

Produksjon:

Her er et skjermbilde av koden:

Kode Forklaring:

  1. Inkludert iostream header-fil i koden vår. Det vil tillate oss å lese fra og skrive til konsollen.
  2. Inkludert std navneområdet for å bruke klassene og funksjonene uten å ringe det.
  3. Å ringe til hovedfunksjonen () som logikken til programmet skal legges til i. {Markerer starten på kroppen til hovedfunksjonen ().
  4. Erklærer to heltallvariabler a og b. Variabel a er tildelt verdien 1.
  5. Tilordne verdi til variabel b. Hvis variabel a er mindre enn 10, vil b bli tildelt verdien 2, ellers vil b bli tildelt en verdi på 5.
  6. Utskriftsverdi for variabel b på konsollen sammen med annen tekst.
  7. Hovedfunksjonen () skal returnere en verdi hvis programmet går bra.
  8. Slutten av kroppen til hovedfunksjonen ().

Operatørens forrang

En enkelt operasjon kan ha mer enn én operatør. I så fall bestemmer operatørens prioritet den som ble evaluert først.

Følgende liste viser forrang for operatører i C ++, med avtagende forrang fra venstre til høyre:

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

Sammendrag:

  • Operatører er symboler for å utføre logiske og aritmetiske operasjoner.
  • Aritmetiske operatører hjelper oss med å utføre forskjellige aritmetiske operasjoner på operander.
  • Relasjonsoperatører hjelper oss med å utføre ulike sammenligningsoperasjoner på operander.
  • Logiske operatører hjelper oss med å utføre forskjellige logiske operasjoner på operander.
  • Bitvis operatører hjelper oss med å utføre bitvis operasjoner på operander.
  • Oppdragsoperatører hjelper oss med å utføre forskjellige regneoperasjoner på operander.
  • Sizeof-operatøren returnerer størrelsen på en variabel eller datatype.
  • Kommaoperatøren utfører en sekvens av operasjoner.
  • Den betingede operatøren evaluerer en tilstand og handler ut fra resultatet.