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

Prioriteit en associativiteit van C-operatoren begrijpen:een duidelijke gids

Voorrang van operators

De prioriteit van operators bepaalt welke operator als eerste wordt uitgevoerd als er meer dan één operator in een expressie voorkomt.

Laten we een voorbeeld bekijken:

int x = 5 - 17* 6;

In C de prioriteit van * is hoger dan - en = . Vandaar 17 * 6 wordt eerst geëvalueerd. Dan de expressie waarbij - betrokken is wordt geëvalueerd als de prioriteit van - is hoger dan die van = .

Hier is een tabel met de prioriteit van operators van hoger naar lager. De eigenschap van associativiteit zal binnenkort worden besproken.

Tabel voor prioriteit en associativiteit van operators

Bediener Betekenis van operator Associativiteit ()
[]
->
.Functionele oproep
Verwijzing naar array-elementen
Indirecte ledenselectie
Directe ledenselectieVan links naar rechts!
~
+
-
++
--
&
*
groottevan
(type)Logische ontkenning
Bitwise(1 's) complement
Unair plus
Unair min
Verhogen
Verlagen
Dereferentie (adres)
Aanwijzerreferentie
Geeft de grootte van een object terug
Typecast (conversie)Rechts naar links*
/
%Vermenigvuldigen
Verdeel
RestVan links naar rechts+
-Binair plus (optelling)
Binair min(aftrekken)Van links naar rechts<<
>>Links verschuiven
Rechts verschuivenVan links naar rechts<
<=
>
>=Minder dan
Minder dan of gelijk
Groter dan
Groter dan of gelijkVan links naar rechts==
!=Gelijk aan
Niet gelijk aanLinks naar rechts&Bitwise ANDLinks naar rechts^Bitwise exclusief ORLinks naar rechts|Bitwise ORLinks naar rechts&&Logisch ANDLinks naar rechts||Logisch ORLinks naar rechts?:Conditionele OperatorRechts naar links=
*=
/=
%=
+=
-=
&=
^=
|=
<<=
>>=Eenvoudige opdracht
Product toewijzen
Quotiënt toewijzen
Rest toewijzen
Som toekennen
Verschil toekennen
Wijs bitsgewijze AND toe
Wijs bitsgewijze XOR toe
Wijs bitsgewijze OR toe
Linkershift toewijzen
Wijs rechtsverschuiving toeVan rechts naar links, Scheidingsteken van uitdrukkingenVan links naar rechts

Associativiteit van operators

De associativiteit van operators bepaalt de richting waarin een uitdrukking wordt geëvalueerd. Bijvoorbeeld

b = a;

Hierbij wordt de waarde van a toegewezen aan b, en niet andersom. Het komt door de associativiteit van de = operator is van rechts naar links.

Als er twee operators met dezelfde prioriteit (prioriteit) aanwezig zijn, bepaalt de associativiteit ook de richting waarin ze worden uitgevoerd.

Laten we een voorbeeld bekijken:

1 == 2 != 3

Hier operatoren == en != dezelfde prioriteit hebben. En hun associativiteit is van links naar rechts. Vandaar 1 == 2 wordt als eerste uitgevoerd.

De bovenstaande uitdrukking is equivalent aan:

(1 == 2) != 3

Opmerking: Als een instructie meerdere operatoren heeft, kunt u haakjes () gebruiken om de code leesbaarder te maken.

Inhoudsopgave


C Taal

  1. C - Besluitvorming
  2. C# versus C++:wat is het verschil tussen C# en C++?
  3. C#-variabelen en operators met voorbeeld
  4. C++ overbelasting (operator en functie)
  5. Kaart in C++ Standard Template Library (STL) met afdrukvoorbeeld
  6. C# abstracte klasse en methode
  7. C Pass-adressen en -wijzers
  8. malloc() vs calloc():Belangrijkste verschillen uitgelegd met voorbeelden
  9. 20+ Beste C IDE voor Windows, Mac &Linux (2021 Editors)
  10. C# - Strings
  11. C# - Generiek