Heim > häufiges Problem > Hauptteil

Was ist die Operator-Prioritätsregel in der C-Sprache?

清浅
Freigeben: 2020-10-12 15:09:06
Original
62803 Leute haben es durchsucht

Die mündliche Rangfolge der C-Sprachoperatoren ist: Klammermitglieder zuerst, Multiplikation und Division mit Rest drei, Addition und Subtraktion vier, Beziehungsgleichheit (und) sechs; ; bitweises UND, XOR und bitweises ODER, „drei Drittel der Welt“ logisch ODER und zwölf und elf Bedingung ist die niedrigste;

Was ist die Operator-Prioritätsregel in der C-Sprache?

Es gibt insgesamt fünfzehn Prioritäten:

Priorität

Operator

Name oder Bedeutung

Verwenden Sie die Form

Kombinieren Richtung

Anleitung

1

[]

Array-Index

Array-Name [konstanter Ausdruck]

Von links nach rechts

()

Klammern

(Ausdruck)/Funktion Name (Parameterliste)

.

Mitgliedsauswahl (Objekt)

Object.Member name

->

Mitgliedsauswahl (Zeiger)

Objektzeiger->Mitgliedsname

2

-

Negativoperator

-Ausdruck

von rechts nach links

Uniärer Operator

(Typ)

Zwang

(Datentyp) Ausdruck

++

Inkrementoperator

++Variablenname/Variablenname++

Unärer Operator

--

Dekrementoperator

--Variablenname/Variablenname--

Unärer Operator

*

Wertoperator

*Zeigervariable

Unärer Operator

&

Adressoperator

& Variablenname

Unärer Operator

!

Logisches NICHT-Operationssymbol

! Ausdruck

Unärer Operator

~

Bitweiser Negationsoperator

~Expression

Unärer Operator

sizeof

Längenoperator

sizeof(expression)

3

/

außer

Ausdruck/Ausdruck

von links nach rechts

Binärer Operator

*

Multiplizieren

Ausdruck*Ausdruck

Binäroperator

%

Rest (Modulo)

Ganzzahlausdruck/Ganzzahlausdruck

Binäroperation Talisman

4

+

plus

Ausdruck+Ausdruck

Von links nach rechts

Binärer Operator

-

Minus

Ausdruck - Ausdruck

Binäroperator

5

<<

Nach links verschieben

Variable<

Von links nach rechts

Binärer Operator

>>

Nach rechts verschieben

Variable>>Ausdruck

Binärer Operator

6

>

ist größer als

Expression>Expression

Von links nach rechts

Binärer Operator

>=

Größer als oder gleich

Ausdruck>=Ausdruck

Binäroperator

<

Kleiner als

Ausdruck

Binäroperator

<=

Kleiner oder gleich

Ausdruck< ;=Ausdruck

Binäroperator

7

==

ist gleich

Ausdruck == Ausdruck

von links nach rechts

Binärer Operator

!=

ist nicht gleich

expression!= expression

binärer Operator

8

&

Bitweise und

Ausdrücke & Ausdrücke

Von links nach rechts

Binärer Operator

9

^

Bitweises XOR

Ausdruck^Ausdruck

Von links nach rechts

Binärer Operator

10

|

Bitweises ODER

Ausdruck|Ausdruck

Von links nach rechts

Binärer Operator

11

&&

Logisches UND

Ausdruck&&Ausdruck

von links nach rechts

Binäroperator

12

||

Logisches ODER

Ausdruck||Ausdruck

Von links nach rechts

Binärer Operator

13

?:

Bedingungsoperator

Ausdruck 1 ? Ausdruck 2: Ausdruck 3

Rechts nach links

Ternärer Operator

14

=

Zuweisungsoperator

Variable = Ausdruck

von rechts nach links

/=

Zuweisung nach Division

Variable/=Ausdruck

*=

Multiplizieren und Wert zuweisen

Variable*=Ausdruck

%=

Wert nach Modulo zuweisen

Variable% =Ausdruck

+=

Zuordnung nach Addition

Variable +=Ausdruck

-=

minus Nachzuweisung

variable-=ausdruck

<<=

Wert nach Linksverschiebung zuweisen

Variable<<=Ausdruck

>>=

Wert nach Rechtsverschiebung zuweisen

Variable>>=Ausdruck

& =

Zuweisung nach bitweisem UND

Variable &= Ausdruck

^=

Zuweisung nach bitweisem XOR

Variable^=Ausdruck

|=

Zuweisung nach bitweisem ODER

Variable|=Ausdruck

15

,

Kommaoperator

Ausdruck, Ausdruck,…

Von links nach rechts

Sequentielle Operationen von links nach rechts

Anleitung:

Bei Operatoren mit derselben Priorität wird die Reihenfolge der Operationen durch die Kombinationsrichtung bestimmt.

Funktion:

  • Klammer-Mitgliedsnr . 1; //Klammeroperator []() Mitgliedsoperator ->

  • Alle unären Operatoren wie ++, -- , + (positiv) , - (negativ), Zeigerarithmetik*, &

  • Multiplikation und Division mit Rest drei, Addition und Subtraktion vier; //Dieser „Rest“ bezieht sich auf die Restoperation, d. h. %

  • Shift fünf, Relation sechs; //Shift-Operator: << >>, Relation: >= <= etc.

  • Gleich (und) ungleiches siebtes; //das ist == und!=

  • bitweises UND, XOR und bitweises ODER; //dieses Mehrere sind Bitoperationen: bitweises UND (&) XOR (^) bitweises ODER (|)

    "三三天下"890;

    Die Bedingung ist höher als die Zuweisung, // Die Priorität des ternären Operators liegt auf Platz 13, nur höher als die des Zuweisungsoperators und ","
  • Die Komma-Operationsebene ist die niedrigste ! //Der Kommaoperator hat die niedrigste Priorität

Das obige ist der detaillierte Inhalt vonWas ist die Operator-Prioritätsregel in der C-Sprache?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage