カテゴリ: C++ 更新日: 2026/02/17

C++の代入演算子を完全解説!初心者でもわかる = += -= *= /= の活用方法

代入演算子 (=, +=, -=, *=, /=) の活用
代入演算子 (=, +=, -=, *=, /=) の活用

先生と生徒の会話形式で理解しよう

生徒

「C++のプログラムを見ていると、イコールがたくさん出てきて混乱します。全部同じ意味なんですか?」

先生

「実は少しずつ役割が違います。C++では代入演算子と呼ばれていて、値を変数に入れるための大切な仕組みなんです」

生徒

「+= とか -= も見たことがあります。あれは何をしているんですか?」

先生

「それも代入演算子の仲間です。順番に、ゆっくり確認していきましょう」

1. 代入演算子とは?

1. 代入演算子とは?
1. 代入演算子とは?

C++の代入演算子とは、値を変数に入れるための記号です。 変数とは、数字や文字を一時的にしまっておく箱のような存在です。 代入演算子を使うことで、その箱の中身を決めたり、書き換えたりできます。 プログラミング未経験の方は、ノートに数字を書いて消して書き直す作業を 思い浮かべると分かりやすいでしょう。

2. 基本の代入演算子「=」

2. 基本の代入演算子「=」
2. 基本の代入演算子「=」

イコール記号は、右側の値を左側の変数に入れるという意味です。 数学のイコールとは意味が違うため、最初は戸惑いやすいポイントです。 C++では「等しい」という意味ではなく、 「代入する」という動作を表しています。


int score;
score = 80;

std::cout << score << std::endl;

80

3. 足しながら代入する「+=」

3. 足しながら代入する「+=」
3. 足しながら代入する「+=」

プラスイコールは、今入っている値に数を足して、 その結果をもう一度同じ変数に入れる演算子です。 これは「少しずつ増やす」処理でよく使われます。 ゲームの得点計算や、合計金額を計算する場面を想像すると理解しやすいです。


int total = 100;
total += 20;

std::cout << total << std::endl;

120

4. 引きながら代入する「-=」

4. 引きながら代入する「-=」
4. 引きながら代入する「-=」

マイナスイコールは、変数の中身から指定した数を引いて、 その結果を同じ変数に戻します。 所持金が減る処理や、残り回数を管理するときによく使われます。 現実の減算と同じ感覚で使える演算子です。


int life = 10;
life -= 3;

std::cout << life << std::endl;

7

5. 掛けながら代入する「*=」

5. 掛けながら代入する「*=」
5. 掛けながら代入する「*=」

アスタリスクイコールは、現在の値に数を掛けて、 その結果を同じ変数に代入します。 倍率計算や、数量と単価をまとめて更新したい場合に便利です。 記号は少し難しそうに見えますが、 中身は単純な掛け算です。


int price = 500;
price *= 2;

std::cout << price << std::endl;

1000

6. 割りながら代入する「/=」

6. 割りながら代入する「/=」
6. 割りながら代入する「/=」

スラッシュイコールは、変数の値を割り算した結果で更新します。 人数で割って平均を求める場面などで使われます。 整数同士の割り算では、小数点以下が切り捨てられる点に注意が必要です。 これはC++の基本的な仕様です。


int totalScore = 90;
totalScore /= 3;

std::cout << totalScore << std::endl;

30

7. 代入演算子を使うメリット

7. 代入演算子を使うメリット
7. 代入演算子を使うメリット

代入演算子を使うことで、コードが短く読みやすくなります。 同じ変数名を何度も書かずに済むため、 書き間違いも減ります。 初心者のうちから、こうした書き方に慣れておくと、 後から大きなプログラムを読むときに理解しやすくなります。

8. 初心者が混乱しやすい注意点

8. 初心者が混乱しやすい注意点
8. 初心者が混乱しやすい注意点

イコールとダブルイコールを混同しないことが大切です。 今回紹介した代入演算子は、すべて値を入れ直すためのものです。 条件判定とは役割が違うため、 意味を分けて覚える必要があります。 まずは「代入は値を入れる」と覚えると混乱しにくくなります。

カテゴリの一覧へ
新着記事
New1
Rust
Rustの所有権(Ownership)の仕組みを完全ガイド!初心者でもわかるメモリ安全とムーブ
New2
C++
C++開発環境を最適化する方法!初心者向けに徹底解説(GCC, Clang, Visual Studio, CMake)
New3
C++
C++のビルドツール(Make・Ninja・MSBuild)の違いを完全ガイド!初心者でもわかる開発環境構築
New4
C++
C++のsizeof演算子を完全解説!初心者でもわかる役割と使いどころ
人気記事
No.1
Java&Spring記事人気No1
C言語
Visual Studio CodeでC言語を実行する方法【拡張機能の設定と実行手順】
No.2
Java&Spring記事人気No2
C言語
C言語開発でよく使われるエディタとIDEランキング【初心者向け完全ガイド】
No.3
Java&Spring記事人気No3
C言語
C言語をオンラインで実行できる便利なコンパイラサービスまとめ【初心者向け】
No.4
Java&Spring記事人気No4
C++
C++の主要な実装をわかりやすく解説!GCC・Clang・MSVCの違いと特徴
No.5
Java&Spring記事人気No5
C言語
C言語を学ぶ初心者におすすめの環境構築手順【2025年版】
No.6
Java&Spring記事人気No6
C言語
C言語のソースコードとヘッダファイルの役割とは?初心者向けにわかりやすく解説!
No.7
Java&Spring記事人気No7
C++
CMakeの役割と導入方法をやさしく解説!C++開発環境構築ガイド
No.8
Java&Spring記事人気No8
C++
MinGWとMSYS2でWindowsにC++環境を構築する方法を徹底解説!初心者でもできるセットアップガイド