今日の人気記事

  1. continue文 - ループをスキップ
  2. エスケープシーケンス - 特殊文字
  3. 入力した行列の積(掛け算)を計算する
  4. 四則演算 - 算術演算子
  5. LinuxでC言語 - コンパイラ(gcc)のインストール

(前置・後置)インクリメント演算子, ++

当ページのリンクには広告が含まれています。

スポンサーリンク

ここではインクリメント演算子を紹介します。

for文while文などの繰り返し処理でよく使います。「++i」なんて、表記をみたことがある人も多いでしょう。

ここでは(前置・後置)インクリメント演算子の意味と使い方をみていきます。

インクリメント演算子

インクリメント演算子は、「+」記号を2つ並べた「++」で表し、変数の値を1つ増やすという意味があります。

(前置・後置)インクリメント演算子

インクリメント演算子には次の2つの種類(使い方)があります。

演算子名前使い方
++前置インクリメント演算子++i変数「i」の値を +1
++後置インクリメント演算子i++変数「i」の値を +1

えっ! 前置と後置で、どこが違うの……と思われる方もいると思うので、具体例(サンプルプログラム)をみてみましょう。

前置インクリメント

まずは前置インクリメントのサンプルプログラムをみてみましょう。

#include <stdio.h>

int main(void){

  int x = 2;
  int y;

  /* 前置インクリメント */
  y = ++x;

  printf("x=%d, y=%d\n", x,y);

  return 0;
}

実行結果は次のようになります。

x=3, y=3

後置インクリメント

次は後置インクリメントのサンプルプログラムをみてみましょう。

#include <stdio.h>

int main(void){

  int x = 2;
  int y;

  /* 後置インクリメント */
  y = x++;

  printf("x=%d, y=%d\n", x,y);

  return 0;
}

実行結果は次のようになります。

x=3, y=2

このように同じように見える数式ですが、結果が異なります!

それでは2つの結果を踏まえて、前置・後置インクリメント演算子の違いをみていきます。

演算子サンプルプログラム説明
前置インクリメントy = ++x;xの値をインクリメント(+1)し、yにxの値を代入
後置インクリメントy = x++;xの値をインクリメント(+1)するが、インクリメントする前のxの値をyに代入

このように演算結果が異なるので、インクリメント演算子を使って変数の値を代入する場合は注意しましょう。

次は「(前置・後置)デクリメント演算子, --」についてみていきます。

C言語入門

C言語 - サンプルプログラム

基本構文 の人気記事

  1. printf関数の変換指定子
  2. int main(void) - プログラムの基本
  3. 変数の値を出力 - printf 関数
  4. continue文 - ループをスキップ
  5. while文 - 繰り返し処理
  6. 条件演算子(3項演算子)「? :」
  7. else if文 - 複数の条件式 - 条件分岐
  8. 関数のプロトタイプ宣言
  9. (前置・後置)インクリメント演算子, ++
  10. エスケープシーケンス - 特殊文字

関連記事(一部広告含む)