C言語 入門 インクリメント 初心者用の解説

C言語

演算子をもう少し勉強したい。

これから、for文、while文を勉強したい。

インクリメントがまだ理解できない。

この記事を読めば、これらの悩みを解決できます。

過去に、算術演算子と複合代入演算子を解説しているので、まだ見ていない人は参考にしてもて下さい。

今回は、もっとシンプルで簡単な計算方法を紹介していきます。「インクリメント演算子」と「デクリメント演算子」というものです。

スポンサーリンク

「1だけ+したい!」そんなときはインクリメント!

これから「for」「while」「if」などを習う人が多いと思いますが、そのときに「+1したい!」って思うことが増えていきます。「インクリメント演算子」はそんな時に便利です。

インクリメント演算子の使い方

まずは、変数宣言と代入をしましょう。代入する数字はなんでも良いのですが、ここで数字を代入しないと変数を計算することができません。(1をプラスすると言っても、何にプラスするのかが分からないと計算なんてできないですよね?)

その次に、「インクリメント演算子」で計算していきます。インクリメント演算子は

++変数;

のようにして使います。こうすることで、変数に+1することができます。

あとは、「printf」を使って出力をするだけです。

#include<stdio.h>
int main()
{
	int plus;
	plus = 3;
	++plus;
	printf("%d", plus);
}

 こんな感じで「3+1」の計算プログラムを作ってみました。いつものように、「int」で変数宣言をして、「%d」で出力するといった感じです。

このように出力されます。

最初紹介した「デクリメント演算子」は、「マイナス1する計算」です。「インクリメント演算子」の「++」の部分を「--」に変えれば、同じように使えます。「インクリメント演算子」と「デクリメント演算子」はセットで覚えましょう。

インクリメントを後置きすると?

「++変数;」という形のインクリメントを説明しましたが、「変数++;」という形も存在します。ここからは2つの違いを説明していきます。

実際に、プログラムを使って解説します。最初はplusを「変数++;」の形で、次に「++変数;」の形でインクリメントして出力します。

#include<stdio.h>
int main()
{
    int plus;
    plus = 3;

    printf("plus++:%d", plus++);
    printf("¥n++plus:%d", ++plus);
}

このように、printfの中でインクリメントすることもできます。では、出力してみます。

「plus++」は全く変化なしなのに、「++plus」は3+2=5より「5」と出力されてしまいました。つまり、1回目の出力の後と2回目の出力をする前でplusに2を足すという計算をしていたのです。

なぜでしょうか?

実は、「++変数」は「その行の他の処理よりも先にインクリメントする」という意味で、「変数++」は「その行の他の処理よりも後にインクリメントする」という意味です。つまり、「plusを出力」➔「plusをインクリメント」➔「plusをインクリメント」➔「plusを出力」という流れでプログラムは実行されたのです。

2つの違いをまとめてみます。

++変数先にインクリメント
変数++後にインクリメント

まとめ

演算子の種類はたくさんありますが、どれが一番使いやすいとかはないです。全部使えるまでたくさんプログラムを書きましょう。特に、インクリメントはwhile文やif文で何度も使用するので忘れないようにしましょう。

次は、関係演算子と論理演算子を勉強しましょう。