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

代入演算子

pointこの用語のポイント

point演算子だよ

point演算子の右側の値を左側の変数に入れるよ

point「=」(単純代入演算子)を指していることが多いけど、実際には「+=」「-=」「*=」「/=」「%=」など、いろいろあるよ

スポンサーリンク

簡単に書くよ

代入演算子(読:ダイニュウエンザンシ 英:assignment operator)とは

プログラミングで出てくる演算子のひとつ
であり

「右側の値を左側の変数(プログラミングにおける値を入れておく箱)に入れますよ~」な代入を意味する演算子
です。


image piyo

詳しく書くよ

順番に見ていきましょう。
まずは予備知識として「変数」と「演算子」について簡単に説明します。
「そんなの説明されなくても知ってるよ!」な人は適当に読み飛ばしてください。

変数は「プログラミング言語における『値を入れておく箱』」です。
処理の途中で値を入れたり、逆に取り出したりできます。

代入演算子

演算子は「どんな演算をするか表す記号」です。
「+」「-」「*(×)」「/(÷)」をはじめ、なんか いろいろ あります。

代入演算子2

以上を踏まえて

演算子の右側の値を左側の変数に入れるときに使う演算子

が「代入演算子」です。
演算子の見た目は「=(イコールが1つ)です。

代入演算子3

例えば、そうですね。
以下のような処理が あったとしましょう。

a = 10;

これは

変数aに「10」を入れてください

な命令です。

代入演算子4

ここで登場した「=」が代入演算子です。

代入演算子5

多くの場合、プログラミング言語で出てくる「=」は、算数・数学の「=」とは違います。
慣れれば感覚的に分かりますけどね。
プログラミングを始めたばかりの人は意識してあげてください。

算数・数学で出てくる「=」は「右と左は同じですよ~」の意味ですよね。
言語の種類にもよりますが、プログラミング言語において「右と左は同じですよ~(同じですか~?)」を意味する演算子は「==(イコール2つ)」か「===(イコール3つ)」を使うことが多いのです。
「=」(イコール1つ)は比較では ありません。
代入です。

代入演算子6

以上で代入演算子の概要の説明は終わりです。
次に、もう少し、あれやこれやを説明します。
余裕がある方は頑張って読んであげてください。
脳みそから煙が出そうな人は無理する必要ありません。
ゆっくり休んでください。

休め

あっ、読んでくださるのですね。
ありがとうございます。

それでは、いってみましょう。

ここまでに説明した代入演算子は「単純代入演算子」とも呼ばれます。
何故そんな呼び名があるかというと、単純ではない代入演算子もあるからです。

単純ではない代入演算子は「複合代入演算子」と呼ばれています。
※もしかしたら複合代入演算子以外にも単純ではない代入演算子があるかもしれませんが、私は把握していません。

複合代入演算子は「演算子の左側の値と右側の値を使った計算をやり、その計算結果を左側の変数に入れる演算子」です。

代入演算子7

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

まずは「+=」です。
こいつは「加算代入演算子」と呼ばれています。

書き方は

ret += a;

です。
これは

ret = ret + a;

と書いたのと同じです。

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

代入演算子8

次は「-=」です。
こいつは「減算代入演算子」と呼ばれています。

書き方は

ret -= a;

です。
これは

ret = ret - a;

と書いたのと同じです。

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

代入演算子9

次は「*=」です。
こいつは「乗算代入演算子」と呼ばれています。

書き方は

ret *= a;

です。
これは

ret = ret * a;

と書いたのと同じです。

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

代入演算子10

次は「/=」です。
こいつは「除算代入演算子」と呼ばれています。

書き方は

ret /= a;

です。
これは

ret = ret / a;

と書いたのと同じです。

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

代入演算子11

最後は「%=」です。
こいつは「剰余代入演算子」と呼ばれています。

書き方は

ret %= a;

です。
これは

ret = ret % a;

と書いたのと同じです。

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

5 % 2

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

つまり

ret %= a;

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

代入演算子12

ビット演算をしてその結果を代入したり、他にも複合代入演算子はあります。
ですが、よく出てくる有名どころは

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


の5つです。
気が向いたら、覚えてあげてください。

複合代入演算子も代入演算子です。
代入演算子というカテゴリの中に単純代入演算子や複合代入演算子があります。

代入演算子13

とはいえ、複合代入演算子を指す場合は「複合」と付けるのが一般的です。
単に「代入演算子」と出てきた場合は、単純代入演算子を指していることが多いでしょう。

代入演算子14

あまり神経質になる必要は、ありませんけどね。
一応、頭の片隅にでも置いておいてあげてください。
「代入演算子」と出てきたら

1.単純代入演算子(「=」)とか複合代入演算子(「+=」「-=」「*=」「/=」「%=」……)とかのこと
2.単純代入演算子(「=」)のこと


の2つの場合があります。


image piyo2

一言でまとめるよ

まぁ「代入演算子」って単語が出てきたら「右の値(と左の値の計算結果)を左の変数(プログラミングにおける値を入れておく箱)に入れるときに使う演算子なんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像003
書籍画像031

おまけ



書籍画像
わわわ説明術コラム
宣伝だよ
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本
AI用語図鑑 ビジネス・開発・試験対策に使える厳選キーワード256
実践サイバーセキュリティ入門講座 現場に残された痕跡からハッカーの攻撃を暴け