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

C - Operatoren

Ein Operator ist ein Symbol, das den Compiler anweist, bestimmte mathematische oder logische Funktionen auszuführen. Die C-Sprache ist reich an eingebauten Operatoren und bietet die folgenden Arten von Operatoren −

Wir werden uns in diesem Kapitel mit der Funktionsweise der einzelnen Operatoren befassen.

Arithmetische Operatoren

Die folgende Tabelle zeigt alle arithmetischen Operatoren, die von der Sprache C unterstützt werden. Angenommen Variable A enthält 10 und Variable B hält 20 dann −

Beispiele anzeigen

Operator Beschreibung Beispiel
+ Addiert zwei Operanden. A + B =30
Subtrahiert den zweiten Operanden vom ersten. A − B =-10
* Multipliziert beide Operanden. A * B =200
/ Teilt Zähler durch Denumerator. B / A =2
% Moduloperator und Rest nach einer ganzzahligen Division. B % A =0
++ Erhöhungsoperator erhöht den Integerwert um eins. A++ =11
-- Dekrement-Operator verringert den ganzzahligen Wert um eins. A-- =9

Relationale Operatoren

Die folgende Tabelle zeigt alle von C unterstützten Vergleichsoperatoren. Nehmen Sie die Variable A an enthält 10 und Variable B hält 20 dann −

Beispiele anzeigen

Operator Beschreibung Beispiel
== Überprüft, ob die Werte zweier Operanden gleich sind oder nicht. Wenn ja, dann wird die Bedingung wahr. (A ==B) ist nicht wahr.
!= Überprüft, ob die Werte zweier Operanden gleich sind oder nicht. Wenn die Werte nicht gleich sind, wird die Bedingung wahr. (A !=B) ist wahr.
> Überprüft, ob der Wert des linken Operanden größer ist als der Wert des rechten Operanden. Wenn ja, dann wird die Bedingung wahr. (A> B) ist nicht wahr.
< Überprüft, ob der Wert des linken Operanden kleiner ist als der Wert des rechten Operanden. Wenn ja, dann wird die Bedingung wahr. (A
>= Überprüft, ob der Wert des linken Operanden größer oder gleich dem Wert des rechten Operanden ist. Wenn ja, dann wird die Bedingung wahr. (A>=B) ist nicht wahr.
<= Überprüft, ob der Wert des linken Operanden kleiner oder gleich dem Wert des rechten Operanden ist. Wenn ja, dann wird die Bedingung wahr. (A <=B) ist wahr.

Logische Operatoren

Die folgende Tabelle zeigt alle logischen Operatoren, die von der Sprache C unterstützt werden. Angenommen Variable A enthält 1 und Variable B hält 0, dann −

Beispiele anzeigen

Operator Beschreibung Beispiel
&& Als logischer UND-Operator bezeichnet. Wenn beide Operanden nicht Null sind, wird die Bedingung wahr. (A &&B) ist falsch.
|| Als logischer ODER-Operator bezeichnet. Wenn einer der beiden Operanden nicht Null ist, wird die Bedingung wahr. (A || B) ist wahr.
! Als logischer NOT-Operator bezeichnet. Es wird verwendet, um den logischen Zustand seines Operanden umzukehren. Wenn eine Bedingung wahr ist, macht sie der logische NOT-Operator falsch. !(A &&B) ist wahr.

Bitweise Operatoren

Der bitweise Operator bearbeitet Bits und führt Bit-für-Bit-Operationen durch. Die Wahrheitstabellen für &, | und ^ lauten wie folgt −

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

Angenommen A =60 und B =13 im Binärformat, sie lauten wie folgt −

A =0011 1100

B =0000 1101

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

A&B =0000 1100

A|B =0011 1101

A^B =0011 0001

~A =1100 0011

Die folgende Tabelle listet die von C unterstützten bitweisen Operatoren auf. Angenommen, Variable 'A' enthält 60 und Variable 'B' enthält 13, dann −

Beispiele anzeigen

Operator Beschreibung Beispiel
& Der binäre UND-Operator kopiert ein Bit in das Ergebnis, wenn es in beiden Operanden vorhanden ist. (A &B) =12, also 0000 1100
| Binärer ODER-Operator kopiert ein Bit, wenn es in einem der Operanden vorhanden ist. (A | B) =61, also 0011 1101
^ Der binäre XOR-Operator kopiert das Bit, wenn es in einem Operanden gesetzt ist, aber nicht in beiden. (A ^ B) =49, also 0011 0001
~ Der Komplementoperator der binären Eins ist unär und hat den Effekt, dass Bits „umgedreht“ werden. (~A ) =~(60), also. -0111101
<< Binärer Linksverschiebungsoperator. Der Wert des linken Operanden wird um die vom rechten Operanden angegebene Anzahl von Bits nach links verschoben. A <<2 =240 also 1111 0000
>> Binärer Rechtsverschiebungsoperator. Der Wert des linken Operanden wird um die vom rechten Operanden angegebene Anzahl von Bits nach rechts verschoben. A>> 2 =15, also 0000 1111

Zuweisungsoperatoren

Die folgende Tabelle listet die Zuweisungsoperatoren auf, die von der Sprache C unterstützt werden −

Beispiele anzeigen

Operator Beschreibung Beispiel
= Einfacher Zuweisungsoperator. Weist Werte von rechten Operanden zu linken Operanden zu C =A + B weist C den Wert von A + B zu
+= Und-Zuweisungsoperator hinzufügen. Es addiert den rechten Operanden zum linken Operanden und weist das Ergebnis dem linken Operanden zu. C +=A ist äquivalent zu C =C + A
-= Subtrahieren Sie den AND-Zuweisungsoperator. Es subtrahiert den rechten Operanden vom linken Operanden und weist das Ergebnis dem linken Operanden zu. C -=A ist äquivalent zu C =C - A
*= Multipliziere UND-Zuweisungsoperator. Es multipliziert den rechten Operanden mit dem linken Operanden und weist das Ergebnis dem linken Operanden zu. C *=A ist äquivalent zu C =C * A
/= Teilen UND Zuweisungsoperator. Es dividiert den linken Operanden durch den rechten Operanden und weist das Ergebnis dem linken Operanden zu. C /=A ist äquivalent zu C =C / A
%= Modul UND Zuweisungsoperator. Es nimmt Modulus unter Verwendung von zwei Operanden und weist das Ergebnis dem linken Operanden zu. C %=A entspricht C =C % A
<<= Linksverschiebung UND Zuweisungsoperator. C <<=2 ist dasselbe wie C =C <<2
>>= Rechtsverschiebung UND Zuweisungsoperator. C>>=2 ist dasselbe wie C =C>> 2
&= Bitweiser UND-Zuweisungsoperator. C &=2 ist dasselbe wie C =C &2
^= Bitweises exklusives ODER und Zuweisungsoperator. C ^=2 ist dasselbe wie C =C ^ 2
|= Bitweises inklusives ODER und Zuweisungsoperator. C |=2 ist dasselbe wie C =C | 2

Verschiedene Operatoren ↦ sizeof &ternary

Neben den oben besprochenen Operatoren gibt es noch einige andere wichtige Operatoren, darunter sizeof und ? : unterstützt von der C-Sprache.

Beispiele anzeigen

Operator Beschreibung Beispiel
sizeof() Gibt die Größe einer Variablen zurück. sizeof(a), wobei a eine Ganzzahl ist, gibt 4 zurück.
& Gibt die Adresse einer Variablen zurück. &a; gibt die aktuelle Adresse der Variablen zurück.
* Zeiger auf eine Variable. *a;
? : Bedingter Ausdruck. Wenn Bedingung wahr ist ? dann Wert X :sonst Wert Y

Vorrang der Operatoren in C

Die Operatorpriorität bestimmt die Gruppierung von Begriffen in einem Ausdruck und entscheidet, wie ein Ausdruck ausgewertet wird. Bestimmte Operatoren haben Vorrang vor anderen; Beispielsweise hat der Multiplikationsoperator eine höhere Priorität als der Additionsoperator.

Zum Beispiel x =7 + 3 * 2; hier wird x 13 zugewiesen, nicht 20, weil der Operator * einen höheren Vorrang als + hat, also wird er zuerst mit 3*2 multipliziert und dann zu 7 addiert.

Dabei erscheinen die Operatoren mit der höchsten Priorität ganz oben in der Tabelle, die mit der niedrigsten Priorität ganz unten. Innerhalb eines Ausdrucks werden Operatoren mit höherer Priorität zuerst ausgewertet.

Beispiele anzeigen

Kategorie Operator Assoziativität
Postfix () [] -> . ++ - - Von links nach rechts
Unär + - ! ~ ++ - - (Typ)* &Größe von Rechts nach links
Multiplikativ * / % Von links nach rechts
Additiv + - Von links nach rechts
Umschalten <<>> Von links nach rechts
Relational <<=>>= Von links nach rechts
Gleichheit ==!= Von links nach rechts
Bitweises UND & Von links nach rechts
Bitweises XOR ^ Von links nach rechts
Bitweises ODER | Von links nach rechts
Logisches UND && Von links nach rechts
Logisches ODER || Von links nach rechts
Bedingt ?: Rechts nach links
Zuweisung =+=-=*=/=%=>>=<<=&=^=|= Rechts nach links
Komma , Von links nach rechts

C Sprache

  1. C#-Operatoren
  2. C# Bitwise- und Bit-Shift-Operatoren
  3. C++-Operatoren
  4. C-Programmieroperatoren
  5. Python-Operatoren
  6. Java-Operatoren
  7. Bitweise Operatoren in C:AND, OR, XOR, Shift &Complement
  8. Verilog-Operatoren
  9. Java - Grundlegende Operatoren
  10. Operatoren in C++