Partager via


Opérateurs additifs : + et -

expression + expression 
expression – expression

Notes

Les opérateurs additifs sont les suivants :

  • Addition (+)

  • Soustraction ()

Ces opérateurs binaires ont une associativité de droite à gauche.

Les opérateurs additifs prennent des opérandes de type arithmétique ou pointeur. Le résultat de l'opérateur d'addition (+) est la somme des opérandes. Le résultat de l'opérateur de soustraction () est la différence entre les opérandes. Si l'un des opérandes ou les deux sont des pointeurs, ils doit d'agir de pointeurs vers des objets, et non des fonctions. Si les deux opérandes sont des pointeurs, les résultats ne sont pas significatifs à moins que tous deux ne soient des pointeurs vers des objets dans le même tableau.

Les opérateurs additifs prennent des opérandes de types arithmétiques, intégraux et scalaires. Ils sont définis dans le tableau suivant.

Types utilisés avec les opérateurs additifs

Type

Signification

arithmétique

Les types intégraux et flottants sont appelés collectivement des types « arithmétiques ».

intégral

Les types char et int de toutes tailles (longs, courts) et les énumérations sont des types « intégraux ».

scalaire

Les opérandes scalaires sont des opérandes de type arithmétique ou pointeur.

Les combinaisons valides pour ces opérateurs sont les suivantes :

arithmétique + arithmétique

scalaire + intégral

intégral + scalaire

arithmétiquearithmétique

scalairescalaire

Notez que l'addition et la soustraction ne sont pas des opérations équivalentes.

Si les deux opérandes sont de type arithmétique, les conversions traitées dans Conversions arithmétiques sont appliquées aux opérandes et le résultat est du type converti.

Exemple

// expre_Additive_Operators.cpp
// compile with: /EHsc
#include <iostream>
#define SIZE 5
using namespace std;
int main() {
   int i = 5, j = 10;
   int n[SIZE] = { 0, 1, 2, 3, 4 };
   cout  << "5 + 10 = " << i + j << endl
         << "5 - 10 = " << i - j << endl;

   // use pointer arithmetic on array

   cout << "n[3] = " << *( n + 3 ) << endl;
}

Voir aussi

Référence

Expressions avec opérateurs binaires

Opérateurs C++

Opérateurs, priorité et associativité C++

Addition de types pointeur

Soustraction de types pointeur

Opérateurs additifs C