Aller au contenu

Programmation C-C++/Priorités des opérateurs

Un livre de Wikilivres.
En cours d'importationlink={{{link}}}

Ce livre est en cours de copie depuis le site http://casteyde.christian.free.fr/cpp/cours/online/book1.html qui le fournit sous licence GFDL.

Cours de C/C++
Le langage
Première approche
Les structures de contrôle
Types avancés
Pointeurs et références
Le préprocesseur
Modularité et compilation
Écrire du code illisible
C++ : La couche objet
C++ : Les exceptions
Identification des types
Les espaces de nommage
Les templates
La bibliothèque standard
Notions de base
Les types complémentaires
Les flux d'entrée / sortie
Les locales
Les conteneurs
Les algorithmes
Conclusion
Priorités des opérateurs
Draft Papers
Bibliographie

Livre original de C. Casteyde
Modifier le modèle

Cette annexe donne la priorité des opérateurs du langage C++, dans l'ordre décroissant. Cette priorité intervient dans l'analyse de toute expression et dans la détermination de son sens. Cependant, l'analyse des expressions peut être modifiée en changeant les priorités à l'aide de parenthèses.

Tableau A-1. Opérateurs du langage

[modifier | modifier le wikicode]
OpérateurNom ou signification
::Opérateur de résolution de portée
[]Opérateur d'accès aux éléments de tableau
()Opérateur d'appel de fonction
type()Opérateur de transtypage explicite
.Opérateur de sélection de membre
->Opérateur de sélection de membre par déréférencement (sucre syntaxique : p->a équivaut à (*p).a)
++Opérateur d'incrémentation post-fixe
--Opérateur de décrémentation post-fixe
newOpérateur de création dynamique d'objets
new[]Opérateur de création dynamique de tableaux
deleteOpérateur de destruction des objets créés dynamiquement
delete[]Opérateur de destruction des tableaux créés dynamiquement
++Opérateur d'incrémentation préfixe
--Opérateur de décrémentation préfixe
*Opérateur de déréférencement (ou indirection)
&Opérateur d'adresse (ou de référencement)
+Opérateur plus unaire
-Opérateur négation unaire
!Opérateur de négation logique
~Opérateur de complément à un
sizeofOpérateur de taille d'objet
sizeofOpérateur de taille de type
typeidOpérateur d'identification de type
(type)Opérateur de transtypage
const_castOpérateur de transtypage de constance
dynamic_castOpérateur de transtypage dynamique
reinterpret_castOpérateur de réinterprétation
static_castOpérateur de transtypage statique
.*Opérateur de sélection de membre par pointeur sur membre
->*Opérateur de sélection de membre par pointeur sur membre par déréférencement
*Opérateur de multiplication
/Opérateur de division
%Opérateur de reste de la division entière
+Opérateur d'addition
-Opérateur de soustraction
<<Opérateur de décalage à gauche
>>Opérateur de décalage à droite
<Opérateur d'infériorité
>Opérateur de supériorité
<=Opérateur d'infériorité ou d'égalité
>=Opérateur de supériorité ou d'égalité
==Opérateur d'égalité
!=Opérateur d'inégalité
&Opérateur et binaire
^Opérateur ou exclusif binaire
|Opérateur ou inclusif binaire
&&Opérateur et logique
||Opérateur ou logique
?:Opérateur ternaire
=Opérateur d'affectation
*=Opérateur de multiplication et d'affectation
/=Opérateur de division et d'affectation
%=Opérateur de modulo et d'affectation
+=Opérateur d'addition et d'affectation
-=Opérateur de soustraction et d'affectation
<<=Opérateur de décalage à gauche et d'affectation
>>=Opérateur de décalage à droite et d'affectation
&=Opérateur de et binaire et d'affectation
|=Opérateur de ou inclusif binaire et d'affectation
^=Opérateur de ou exclusif binaire et d'affectation
,Opérateur virgule