c言語のインクリメント問題
1分あれば読み終わります
プログラミング言語の繰り返しでおなじみのインクリメントですが、
cのインクリメントには
i++
と
++i
があります
上からプレインクリメント、ポストインクリメントと呼びます
両方とも立派なインクリメントなのですが、
プレインクリメントは式が評価される前に
ポストインクリメントは式が評価された後に
インクリメントされます。
なので
int main(void)
{
int i[3] = { 0, 1, 2 }, j = 1;
printf("%i\n", i[++j]);
return 0;
}
#=> 2
int main(void)
{
int i[3] = { 0, 1, 2 }, j = 1;
printf("%i\n", i[j++]);
return 0;
}
#=> 1
こうなるんですね。
Author And Source
この問題について(c言語のインクリメント問題), 我々は、より多くの情報をここで見つけました https://qiita.com/ksuematsu/items/85f378de02e04472a01a著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .