プログラミングにおける「=」と「==」の違い
スポンサーリンク
予備知識
| 用語 | 意味 |
|---|---|
| プログラミング | プログラムを作ること |
| プログラミング言語 | プログラムの元ネタ(ソースコード)を書くときに使う言葉 |
| 変数 | プログラミング言語における「値を入れておく箱」 |
| 演算子 | 「どんな演算をしてくださいね」を表現する記号 |
それぞれの用語の意味
| 用語 | 意味 |
|---|---|
| =(単純代入演算子) | プログラミングで出てくる演算子のひとつで「右側の値を左側の変数に入れますよ~」な代入を意味する演算子 |
| ==(等価演算子) | プログラミングで出てくる演算子のひとつで「右側の値と左側の値は同じですか~?」な比較を意味する演算子 |
似ているところ
どちらも、プログラミングで出てくる演算子です。
違うところ
「=」(イコール1つ)は値の代入を意味する演算子です。
右の値を左に入れます。

「==」(イコール2つ)は値の比較を意味する演算子です。
右の値と左の値を比較します。

備考
プログラミング言語で出てくる「=」は、算数・数学の「=」とは違います。
慣れれば感覚的に分かりますけどね。
プログラミングを始めたばかりの人は意識してあげてください。
言語の種類にもよりますが、プログラミング言語において「右と左は同じですよ~(同じですか~?)」を意味する演算子は「==(イコール2つ:等価演算子)」か「===(イコール3つ:厳密等価演算子)」を使うことが多いのです。
「=」(イコール1つ)は、比較では ありません。
代入です。

C言語を例に説明しますが「aとbは同じですか?」な処理を書こうとして
if(a = b){
printf("aとbは同じ");
}
と書くのは間違いです。
「=」(イコール1つ)は代入を意味する演算子だからです。
「aとbは同じですか?」を判定したい場合は
if(a == b){
printf("aとbは同じ");
}
と「==」(イコール2つ)で書く必要があります。






