Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C Operator-Rangfolge & Assoziativität verstehen: Klare Anleitung

Operator-Rangfolge (Precedence)

Die Rangfolge bestimmt, welcher Operator zuerst ausgeführt wird, wenn ein Ausdruck mehrere Operatoren enthält.

Beispiel: int x = 5 - 17 * 6;

In C hat * höhere Rangfolge als - und =. Also wird 17 * 6 zuerst evaluiert. Dann - (höher als =).

Operator-Rangfolge & Assoziativität Tabelle (höher → niedriger)

OperatorBedeutungAssoziativität
()
[]
->
.
Funktionsaufruf
Array-Elementzugriff
Indirekte Mitgliedswahl
Direkte Mitgliedswahl
Links nach rechts
!
~
+
-
++
--
&
*
sizeof
(type)
Logische Negation
Bitweises Komplement (1er)
Unäres Plus
Unäres Minus
Inkrement
Dekrement
Dereferenzierung (Adresse)
Zeigerreferenz
Größe eines Objekts
Typecast (Konversion)
Rechts nach links
*
/
%
Multiplikation
Division
Rest
Links nach rechts
+
-
Binäres Plus (Addition)
Binäres Minus (Subtraktion)
Links nach rechts
<<
>>
Links-Shift
Rechts-Shift
Links nach rechts
<
<=
>
>=
Kleiner als
Kleiner oder gleich
Größer als
Größer oder gleich
Links nach rechts
==
!=
Gleich
Ungleich
Links nach rechts
&Bitweises UNDLinks nach rechts
^Bitweises exklusives ODERLinks nach rechts
|Bitweises ODERLinks nach rechts
&&Logisches UNDLinks nach rechts
||Logisches ODERLinks nach rechts
?:BedingungsoperatorRechts nach links
=
*=
/=
%=
+=
-=
&=
^=
|=
<<=
>>=
Einfache Zuweisung
Produkt zuweisen
Quotient zuweisen
Rest zuweisen
Summe zuweisen
Differenz zuweisen
Bitweises UND zuweisen
Bitweises XOR zuweisen
Bitweises ODER zuweisen
Links-Shift zuweisen
Rechts-Shift zuweisen
Rechts nach links
,AusdruckstrennerLinks nach rechts

Assoziativität von Operatoren

Assoziativität bestimmt Auswertungsrichtung. Beispiel: b = a; – Wert von a wird b zugewiesen, nicht umgekehrt, da = rechts-nach-links assoziativ ist.

Bei zwei Operatoren gleicher Rangfolge bestimmt Assoziativität die Ausführungsrichtung.

Beispiel: 1 == 2 != 3

== und != haben gleiche Rangfolge, Assoziativität links-nach-rechts. Also wird 1 == 2 zuerst ausgeführt.

Ausdruck entspricht: (1 == 2) != 3

Hinweis: Bei mehreren Operatoren klammern Sie mit () für Lesbarkeit.

Inhaltsverzeichnis

C Sprache

  1. C# Methoden: Definieren, Aufrufen, Rekursion & Parameterübergabe
  2. C# Operator-Rangfolge und Assoziativität meistern: Ein praktischer Leitfaden
  3. C Variablen, Konstanten und Literale: Ein vollständiger Leitfaden
  4. C# Ternärer Operator: Knapper Leitfaden zu bedingten Ausdrücken
  5. C++ Templates: Generische Programmierung meistern
  6. Die C for-Schleife meistern: Syntax, Mechanik und praktische Beispiele
  7. C# Operatoren: Umfassender Leitfaden zu allen Operatorarten
  8. Dynamische Speicherallokation in C: malloc() verstehen mit praktischen Beispielen
  9. C# Serialisierung & Deserialisierung: Ein praktisches Beispiel
  10. C-Programmstruktur verstehen: Einsteiger-Guide