加法演算子: + および -
expression + expression
expression – expression
解説
加法演算子を次に示します。
加算 (+)
減算 (-)
これらの二項演算子の結合規則は、左から右方向です。
加法演算子は、数値型またはポインター型のオペランドを受け取ります。 加算 (+) 演算子の結果はオペランドの合計です。 減算 (–) 演算子の結果は、オペランド間の差です。 オペランドの一方または両方がポインターの場合、これらのオペランドは、関数ではなくオブジェクトのポインターである必要があります。 両方のオペランドがポインターの場合、両方とも同じ配列のオブジェクトへのポインターでない限り意味がありません。
加法演算子は、数値、整数、およびスカラー型のオペランドを受け取ります。 次の表にこれらの定義を示します。
加法演算子と併用される型
型 |
説明 |
---|---|
arithmetic |
整数型および浮動型はまとめて "演算" 型と呼ばれます。 |
integral |
すべてのサイズ (long、short) の char 型と int 型、および列挙型は "整数" 型です。 |
scalar |
スカラー オペランドは、数値型またはポインター型のオペランドです。 |
これらの演算子の有効な組み合わせは以下のとおりです。
arithmetic + arithmetic
scalar + integral
integral + scalar
arithmetic – arithmetic
scalar – scalar
加算と減算が同等の操作ではないことに注意してください。
オペランドが両方とも数値型である場合、「算術変換」で説明されている変換がオペランドに適用され、結果は変換後の型になります。
使用例
// 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;
}