Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

Operatoren in C++

Een operator is een symbool dat de compiler vertelt om specifieke wiskundige of logische manipulaties uit te voeren. C++ is rijk aan ingebouwde operators en biedt de volgende typen operators −

  • Rekenkundige operatoren
  • Relationele operators
  • Logische operators
  • Bitwise-operators
  • Opdrachtoperators
  • Diverse operators

In dit hoofdstuk worden de rekenkundige, relationele, logische, bitsgewijze, toewijzings- en andere operatoren één voor één onderzocht.

Rekenkundige operatoren

De volgende rekenkundige operatoren worden ondersteund door de C++-taal −

Neem aan dat variabele A 10 bevat en variabele B 20, dan −

Voorbeelden tonen

Operator Beschrijving Voorbeeld
+ Voegt twee operanden toe A + B geeft 30
- Trekt de tweede operand af van de eerste A - B geeft -10
* Vermenigvuldigt beide operanden A * B geeft 200
/ Verdeelt de teller door de teller B / A geeft 2
% Modulus Operator en rest van na een integer deling B % A geeft 0
++ Ophogingsoperator, verhoogt de integerwaarde met één A++ geeft 11
-- Decrement operator, verlaagt de gehele waarde met één A-- geeft 9

Relationele operators

Er zijn de volgende relationele operatoren die worden ondersteund door de C++-taal

Neem aan dat variabele A 10 bevat en variabele B 20, dan −

Voorbeelden tonen

Operator Beschrijving Voorbeeld
== Controleert of de waarden van twee operanden gelijk zijn of niet, zo ja, dan wordt de voorwaarde waar. (A ==B) is niet waar.
!= Controleert of de waarden van twee operanden gelijk zijn of niet, als de waarden niet gelijk zijn, wordt de voorwaarde waar. (A !=B) is waar.
> Controleert of de waarde van de linker operand groter is dan de waarde van de rechter operand, zo ja, dan wordt de voorwaarde waar. (A> B) is niet waar.
< Controleert of de waarde van de linker operand kleiner is dan de waarde van de rechter operand, zo ja, dan wordt de voorwaarde waar. (A
>= Controleert of de waarde van de linker operand groter is dan of gelijk is aan de waarde van de rechter operand, zo ja, dan wordt de voorwaarde waar. (A>=B) is niet waar.
<= Controleert of de waarde van de linker operand kleiner is dan of gelijk is aan de waarde van de rechter operand, zo ja, dan wordt de voorwaarde waar. (A <=B) is waar.

Logische operators

Er zijn de volgende logische operatoren die worden ondersteund door de C++-taal.

Neem aan dat variabele A 1 bevat en variabele B 0, dan −

Voorbeelden tonen

Operator Beschrijving Voorbeeld
&& Logische AND-operator genoemd. Als beide operanden niet nul zijn, wordt de voorwaarde waar. (A &&B) is niet waar.
|| Logische OR-operator genoemd. Als een van de twee operanden niet nul is, wordt de voorwaarde waar. (A || B) is waar.
! Logische NOT-operator genoemd. Gebruiken om de logische status van de operand om te keren. Als een voorwaarde waar is, maakt de Logische NIET-operator onwaar. !(A &&B) is waar.

Bitwise-operators

Bitwise-operator werkt op bits en voert bit-voor-bit bewerkingen uit. De waarheidstabellen voor &, | en ^ zijn als volgt −

p q p &q p | q p ^ q
0 0 0 0 0
0 1 0 1 1
1 1 1 1 0
1 0 0 1 1

Neem aan dat als A =60; en B =13; nu in binair formaat zullen ze als volgt zijn −

A =0011 1100

B =0000 1101

-----------------

A&B =0000 1100

A|B =0011 1101

A^B =0011 0001

~A =1100 0011

De Bitwise-operators die worden ondersteund door de C++-taal staan ​​vermeld in de volgende tabel. Neem aan dat variabele A 60 bevat en variabele B 13, dan −

Voorbeelden tonen

Operator Beschrijving Voorbeeld
& Binaire AND-operator kopieert een bit naar het resultaat als het in beide operanden bestaat. (A &B) geeft 12 wat 0000 1100 is
| Binaire OR-operator kopieert een bit als het in een van beide operands voorkomt. (A | B) geeft 61 wat 0011 1101 is
^ Binaire XOR-operator kopieert de bit als deze in één operand is ingesteld, maar niet in beide. (A ^ B) geeft 49 wat 0011 0001 is
~ Binary Ones Complement Operator is unair en heeft het effect van 'flipping' bits. (~A ) geeft -61 wat 1100 0011 is in de complementvorm van 2 vanwege een ondertekend binair getal.
<< Binaire linker shift-operator. De waarde van de linkeroperand wordt naar links verplaatst met het aantal bits dat is opgegeven door de rechteroperand. Een <<2 geeft 240 wat 1111 0000 is
>> Binaire Right Shift-operator. De waarde van de linkeroperand wordt naar rechts verplaatst met het aantal bits dat is opgegeven door de rechteroperand. A>> 2 geeft 15 wat 0000 1111 is

Toewijzingsoperators

Er zijn de volgende toewijzingsoperatoren die worden ondersteund door de C++-taal −

Voorbeelden tonen

Operator Beschrijving Voorbeeld
= Eenvoudige toewijzingsoperator, wijst waarden toe van operanden aan de rechterkant aan operand aan de linkerkant. C =A + B zal de waarde van A + B toewijzen aan C
+= Voeg een AND-toekenningsoperator toe, het voegt de rechter operand toe aan de linker operand en wijst het resultaat toe aan de linker operand. C +=A is gelijk aan C =C + A
-= Trek de AND-toekenningsoperator af, het trekt de rechter operand af van de linker operand en wijst het resultaat toe aan de linker operand. C -=A is gelijk aan C =C - A
*= Vermenigvuldig de operator AND toewijzing, het vermenigvuldigt de rechter operand met de linker operand en wijst het resultaat toe aan de linker operand. C *=A is gelijk aan C =C * A
/= Deel AND-toewijzingsoperator, het verdeelt de linker operand met de rechter operand en wijst het resultaat toe aan de linker operand. C /=A is gelijk aan C =C / A
%= Modulus AND-toewijzingsoperator, het vereist modulus met behulp van twee operanden en wijst het resultaat toe aan de linkeroperand. C %=A is gelijk aan C =C % A
<<= Linker shift AND toewijzingsoperator. C <<=2 is hetzelfde als C =C <<2
>>= Rechts shift AND toewijzingsoperator. C>>=2 is hetzelfde als C =C>> 2
&= Bitwise AND-toewijzingsoperator. C &=2 is hetzelfde als C =C &2
^= Bitwise exclusieve OR en toewijzingsoperator. C ^=2 is hetzelfde als C =C ^ 2
|= Bitsgewijze inclusief OR en toewijzingsoperator. C |=2 is hetzelfde als C =C | 2

Diverse operators

De volgende tabel bevat enkele andere operators die C++ ondersteunt.

Zr.Nee Operator en beschrijving
1

grootte van

sizeof operator retourneert de grootte van een variabele. Bijvoorbeeld sizeof(a), waarbij 'a' een geheel getal is en 4 zal retourneren.

2

Conditie ? X :J

Voorwaardelijke operator (?). Als Conditie waar is, retourneert het de waarde van X, anders retourneert het de waarde van Y.

3

,

De komma-operator zorgt ervoor dat een reeks bewerkingen wordt uitgevoerd. De waarde van de gehele komma-uitdrukking is de waarde van de laatste uitdrukking van de door komma's gescheiden lijst.

4

. (punt) en -> (pijl)

Lidoperators worden gebruikt om te verwijzen naar individuele leden van klassen, structuren en vakbonden.

5

Gegoten

Casting-operators converteren het ene gegevenstype naar het andere. Int(2.2000) zou bijvoorbeeld 2 teruggeven.

6

&

Pointer-operator &retourneert het adres van een variabele. Bijvoorbeeld &a; geeft het werkelijke adres van de variabele.

7

*

Pointer-operator * is een aanwijzer naar een variabele. Bijvoorbeeld *var; wijst naar een variabele var.

Voorrang van operators in C++

De operatorprioriteit bepaalt de groepering van termen in een uitdrukking. Dit heeft invloed op de manier waarop een uitdrukking wordt geëvalueerd. Bepaalde operators hebben een hogere prioriteit dan andere; de operator voor vermenigvuldigen heeft bijvoorbeeld een hogere prioriteit dan de operator voor optellen −

Bijvoorbeeld x =7 + 3 * 2; hier wordt x 13 toegewezen, niet 20 omdat de operator * een hogere prioriteit heeft dan +, dus het wordt eerst vermenigvuldigd met 3*2 en vervolgens opgeteld bij 7.

Hier verschijnen operators met de hoogste prioriteit bovenaan de tabel, die met de laagste onderaan. Binnen een uitdrukking worden eerst operators met een hogere prioriteit geëvalueerd.

Voorbeelden tonen

Categorie Operator Associativiteit
Postfix () [] -> . ++ - - Links naar rechts
Unair + - ! ~ ++ - - (type)* &grootte van Van rechts naar links
Multiplicatief * / % Links naar rechts
Additief + - Links naar rechts
Shift <<>> Links naar rechts
Relationeel <<=>>= Links naar rechts
Gelijkheid ==!= Links naar rechts
Bitgewijs EN & Links naar rechts
Bitwise XOR ^ Links naar rechts
Bitgewijs OF | Links naar rechts
Logisch EN && Links naar rechts
Logisch OF || Links naar rechts
Voorwaardelijk ?: Van rechts naar links
Opdracht =+=-=*=/=%=>>=<<=&=^=|= Van rechts naar links
Komma , Links naar rechts

C Taal

  1. C#-operators
  2. C++-gegevenstypen
  3. C++-operators
  4. C++ Opmerkingen
  5. C++-klassesjablonen
  6. C Programmeren van operators
  7. Python-operators
  8. Java-operators
  9. Operators in C++ met voorbeeld:wat is, typen en programma's
  10. C - Operators
  11. C++-overzicht