Maison >Problème commun >Quelle est la règle de priorité des opérateurs en langage C ?
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 ;
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!