Maison >Problème commun >Quelle est la règle de priorité des opérateurs en langage C ?

Quelle est la règle de priorité des opérateurs en langage C ?

清浅
清浅original
2019-03-19 13:16:2462836parcourir

L'ordre de priorité oral des opérateurs du langage C est le suivant : les membres des parenthèses en premier ; tous les éléments uniques en second ; la multiplication et la division avec le reste de trois, l'addition et la soustraction de quatre ; la relation d'égalité (et) de rang sept ; ; ET au niveau du bit, XOR et OU au niveau du bit, « trois tiers du monde » OU logique et ET, douze et onze niveaux d'affectation supérieurs ;

Quelle est la règle de priorité des opérateurs en langage C ?

Il y a quinze priorités au total :

Priorité

Opérateur

Nom ou signification

Utilisez le formulaire

Combinaison direction

Instructions

1

[]

Indice du tableau

Nom du tableau [expression constante]

De gauche à droite

()

Parenthèses

(expression)/fonction nom (liste de paramètres)

.

membre sélectionné (objet)

Objet.Nom du membre

->

Sélection des membres (pointeur)

Pointeur d'objet->Nom du membre

2

-

Opérateur négatif

-expression

de droite à gauche

Opérateur unitaire

(type)

Expression de coercition

(type de données)

++

Opérateur d'incrément

++Nom de la variable/nom de la variable++

Opérateur unaire

--

Opérateur de décrémentation

--Nom de la variable/Nom de la variable--

Opérateur unaire

*

Opérateur de valeur

*Variable de pointeur

Opérateur unaire

&

Opérateur d'adresse

& nom de variable

Opérateur unaire

!

Symbole d'opération logique NON

!Expression

Opérateur unaire

~

Opérateur de négation au niveau du bit

~Expression

Opérateur unaire

sizeof

opérateur de longueur

taillede(expression)

3

/

sauf

expression/expression

de gauche à droite

Opérateur binaire

*

Multiplier

expression*expression

opérateur binaire

%

Reste (modulo)

Expression entière/expression entière

Opération binaire Talisman

4

+

plus

Expression+expression

De gauche à droite

Opérateur binaire

-

Moins

Expression - expression

opérateur binaire

5

<<

Décalage vers la gauche

Variable<

De gauche à droite

Opérateur binaire

>>

Décalage vers la droite

Variable>>Expression

Opérateur binaire

6

>

est supérieur à

Expression>Expression

De gauche à droite

Opérateur binaire

>=

Supérieur ou égal à

expression>=expression

opérateur binaire

<

moins de

expression

opérateur binaire

<=

Inférieur ou égal à

Expression< ;=expression

opérateur binaire

7

==

est égal à

expression == expression

de gauche à droite

Opérateur binaire

!=

n'est pas égal à

expression!= expression

opérateur binaire

8

&

Bitwise et

Expressions & expressions

De gauche à droite

Opérateur binaire

9

^

XOR au niveau du bit

Expression^Expression

De gauche à droite

Opérateur binaire

10

|

OU au niveau du bit

expression|expression

De gauche à droite

Opérateur binaire

11

&&

ET Logique

expression&&expression

de gauche à droite

opérateur binaire

12

||

OU logique

Expression||Expression

De gauche à droite

Opérateur binaire

13

?:

Opérateur conditionnel

Expression 1 ? Expression 2 : Expression 3

De droite à gauche

Opérateur ternaire

14

=

Opérateur d'affectation

Variable = expression

de droite à gauche

/=

Affectation après division

Variable/=Expression

*=

Multiplier et attribuer une valeur

Variable*=expression

%=

Attribuer une valeur après modulo

Variable% =Expression

+=

Affectation après ajout

Variable +=expression

-=

moins Post-affectation

variable-=expression

<<=

Attribuer une valeur après le décalage vers la gauche

Variable<<=Expression

>>=

Attribuer une valeur après le décalage vers la droite

Variable>>=expression

& =

Affectation après bitwise AND

Variable &= expression

^=

Affectation après XOR au niveau du bit

Variable^=expression

|=

Affectation après bitwise OR

Variable|=Expression

15

,

Opérateur virgule

Expression, expression,…

De gauche à droite

Opérations séquentielles de gauche à droite

Instructions :

Pour les opérateurs ayant la même priorité, l'ordre des opérations est déterminé par le sens de la combinaison.

Fonction :

  • Numéro de membre du support . 1; //Opérateur de support []() opérateur membre. ->

  • Tous les opérateurs unaires tels que ++, -- , + (positif) , - (négatif), arithmétique de pointeur*, &

  • multiplication et division avec reste trois, addition et soustraction quatre ; //Ce « reste » fait référence à l'opération de reste, c'est-à-dire %

  • Maj cinq, relation six ; //Opérateur Shift : << >>, relation : >= <= etc.

  • Septième égal (et) inégal ; //c'est-à-dire == et!=

  • AND au niveau du bit, XOR et OR au niveau du bit ; opérations sur les bits : ET au niveau du bit (&) XOR (^) OU au niveau du bit (|)

    "三三天下"890 ;

  • Logique Ou suivi de

    La condition est supérieure à l'affectation, //La priorité de l'opérateur ternaire est classée 13ème, seulement supérieure à l'opérateur d'affectation et ","

  • Le niveau d'opération virgule est le plus bas ! //L'opérateur virgule a la priorité la plus basse

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn