#include <stdio.h>
main()
{
int a[5]={1,2,3,4,5};
int *p;
int i;
p=a;
for(i=0; i<5; i++)
{
printf("%d",*(p+i));
}
}
で、実行結果が「12345」だと書いてあるのですが、仕組みがわかりません。。
printfの中の「i」は0〜4になるのはわかりますが
同じくprintf中の「p」は0なんですか?
0だから「*(p+i)」が0+0でint a[5]={1,2,3,4,5};の中の「1」が表示されるんですか?
そうすると、次は1+1で「2」が表示されますが、
その次が2+2で「4」が表示されるってことになります。そうすると間違いです。
悩んでいます。どなたか説明してもらえませんか?