読み方 : ふくごうだいにゅうえんざんし

複合代入演算子【compound assignment operator】複合演算子

概要

複合代入演算子とはプログラミング言語で用いられる演算子の種類の一つで、変数など値に特定の計算を行われるもの。代入演算子(=)と算術演算子などを組み合わせて構成される。
複合代入演算子のイメージ画像

例えば、通常「aに1を加算せよ」は代入演算子と加算演算子を用いて「a=a+1;」のように記述するが、これを代入演算子に加算を組み合わせた「+=」を用いて「a+=1;」と簡潔に記すことができる。コードの意図が明確になり、変数名が長い場合に繰り返し記述しなくて良いという利点がある。文字列型を扱う言語では「+=」による文字列の連結が可能な場合もあり、例えば「name += "さん"」のように既存の文字列の末尾へ別の文字列を追加できる。

どの演算子と組み合わせることができるかは言語によって異なるが、算術演算子と組み合わせた「+=」(加算代入演算子)、「-=」(減算代入演算子)、「*=」(乗算代入演算子)、「/=」(除算代入演算子)、「%=」(剰余代入演算子)がよく使われる。論理演算子との組み合わせ(&=、^=、|=等)やビット演算子との組み合わせ(<<=、>>=等)が用いられることもある。

JavaJavaScriptPythonPHPなどC言語から記法を導入した多くの言語で同じ構文が採用されており、現代のプログラミング言語においてほぼ標準的な記法となっている。ただし、対応する演算子の種類は言語によって異なる。また、単なる省略記法として扱われることが多いが、内部処理が完全に同一とは限らない場合もある。Javaでは左辺の変数型に合わせた型変換が自動的に行われるため、通常の代入式では必要となる明示的な型変換が不要になることがある。

(2026.5.22更新)
 

他の辞典等による「複合代入演算子」の解説 (外部サイト)

この記事の著者 : (株)インセプト IT用語辞典 e-Words 編集部
1997年8月より「IT用語辞典 e-Words」を執筆・編集しています。累計公開記事数は1万ページ以上、累計サイト訪問者数は1億人以上です。学術論文や官公庁の資料などへも多数の記事が引用・参照されています。