加減算演算子
単項演算子:インデックス への移動
単項
次の単項 + - 式では、
+ cast-expression - cast-expression
cast-expression というオペランドは算術型でなければなりません。
結果
+ cast-expression: 必要なすべての汎整数拡張が行われた後のオペランドの値。
- cast-expression: 必要なすべての汎整数拡張が行われた後のオペランドの値の符号を反転させたもの。
二項
構文
add-expression + multiplicative-expression add-expression - multiplicative-expression
op1 + op2 における正しいオペランド型は次のいずれかです。
- op1 と op2 はどちらも算術型である。
- op1 は整数型であり、op2 はオブジェクト型のポインタである。
- op2 は整数型であり、op1 はオブジェクト型のポインタである。
1 の場合、両オペランドに対して標準の算術変換が行われ、結果は両オペランドの算術和となります。
2 と 3 の場合は、ポインタ算術演算の規則が適用されます。
op1 - op2 における正しいオペランド型
- op1 と op2 はどちらも算術型である。
- op1 と op2 の両方が互換性のあるオブジェクト型のポインタである。
- op1 はオブジェクト型のポインタであり、op2 は整数型である。
1 の場合、両オペランドに対して標準の算術変換が行われ、結果は両オペランドの算術差となります。
2 と 3 の場合は、ポインタ算術演算の規則が適用されます。
メモ: 限定子のない <type> という型は、限定子の付いた const type、volatile type、const volatile type という型と互換であると見なされます。