[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

複合代入演算子 (compound assignment operator)

pointこの用語のポイント

pointプログラミングで出てくる演算子だよ

point計算と代入をまとめてやる演算子だよ

point左辺の値と右辺の値を演算して結果を左辺に入れるよ

スポンサーリンク

簡単に書くよ

複合代入演算子 (compound assignment operator)とは

プログラミングで出てくる演算子の一つで「演算子の左側の値と右側の値を使った計算をして、その結果を左側に代入してね~」を意味する演算子
です。
演算子の見た目としては

「+=」「-=」「*=」「/=」「%=」
などが使われます。

image piyo

詳しく書くよ

まずは予備知識から行きましょう。

プログラミングは「プログラムを作ること」ね。
プログラムの元ネタである「ソースコード」を書く作業を指す場合もあります。

複合代入演算子

ソースコードを書くときに使う言葉は「プログラミング言語」です。
プログラミング言語には、いろいろな種類があります。
それぞれの言語によって書き方は違います。
ですが、基本的な部分の書き方は似ている場合が多いです。

変数」という用語も覚えておいてください。
変数は、プログラミング言語における「値を入れておく箱」です。

複合代入演算子2

あとは「演算子」の説明もしておきましょう。
演算子は「どんな演算をするか表す記号」です。
「+」「-」「*(×)」「/(÷)」の四則演算の記号をはじめ、なんかいろいろあります。

複合代入演算子3

以上が予備知識です。

ここまでを踏まえて、演算子の左側の値と右側の値を使った計算を行い、その計算結果を左側の変数に代入する演算子が「複合代入演算子」です。

複合代入演算子4

なんか、言葉にすると分かりにくいですね。
実際の例を見ると、すぐに理解できると思います。
いくつか、例を挙げてみましょう。

まずは「+=」です。

ret += a;

のように書きます。
これは

ret = ret + a;

と書いたのと同じです。
変数「ret」の値と変数「a」の値を足し算して、その結果を変数「ret」に代入します。
「左辺の値と右辺の値を足し算して、結果を左辺に入れる」演算子です。

次に「-=」です。

ret -= a;

のように書きます。
これは

ret = ret - a;

と書いたのと同じです。
変数「ret」の値から変数「a」の値を引き算して、その結果を変数「ret」に代入します。
「左辺の値から右辺の値を引き算して、結果を左辺に入れる」演算子です。

次に「*=」です。

ret *= a;

のように書きます。
これは

ret = ret * a;

と書いたのと同じです。
変数「ret」の値と変数「a」の値を掛け算して、その結果を変数「ret」に代入します。
「左辺の値と右辺の値を掛け算して、結果を左辺に入れる」演算子です。

次に「/=」です。

ret /= a;

のように書きます。
これは

ret = ret / a;

と書いたのと同じです。
変数「ret」の値と変数「a」の値を使った割り算をして、その結果を変数「ret」に代入します。
「左辺の値と右辺の値を使った割り算をして、結果を左辺に入れる」演算子です。

最後に「%=」です。

ret %= a;

のように書きます。
これは

ret = ret % a;

と書いたのと同じです。

プログラミング言語によっては無い場合もありますが「%」は「割り算の余りを求める」演算子です。
例えば

5 % 2

と書いた場合の計算結果は「1」になります。
5÷2の計算結果が「2、余り1」だからです。
「余り1」を拾います。

つまり

ret %= a;

は変数「ret」の値と変数「a」の値を使った割り算をして、その余りを変数「ret」に代入します。
「左辺の値と右辺の値を使った割り算をして、余りを左辺に入れる」演算子です。

ビット演算してその結果を代入したり、他にも複合代入演算子はあります。
ですが、取りあえず上の5つ

・「+=」:足し算して代入
・「-=」:引き算して代入
・「*=」:掛け算して代入
・「/=」:割り算して代入
・「%=」:割り算して余りを代入


さえ覚えておけば、困ることはほとんどないと思います。

image piyo2

一言でまとめるよ

まぁ「複合代入演算子」って単語が出てきたら「計算と代入をまとめて行う演算子なんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク