i++と++iの違い

i++と++iの違い:


概要

前置インクリメント演算子(++i)と後置インクリメント演算子(i++)はどちらもiにi+1の結果を代入する演算子ですが、その違いについてざっくりと説明します。


前置インクリメント(++i)

式の値としてインクリメント後、つまりi+1の値を返します。

i = 1; 
j = ++i; // jは2 


後置インクリメント(i++)

式の値としてインクリメント前、つまりiの値を返します。

i = 1; 
j = i++; // jは1 


補足

for (int i = 0; i < n; ++i)
for (int i = 0; i < n; i++)

どちらもよく見るforループですが、このように++i,i++が単独で現れ、式の値を使わない場合は動作に関して違いはありません。

また最近のコンパイラでは最適化によって実行速度にも違いがないため、好みの方を使えばいいと思います。

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2024-02-12 22:08:06 RSSフィード2024-02-12 22:00分まとめ(7件)