次のコード スニペットを参照してください。
int main()
{
int arr[] = { 0,3 , 4,28,1198};
for(int i=0;i<5;i++)
printf("\n arr[i] %u \n" , arr+i);
printf("\n *******************\n");
printf("%u ", &arr+1);
return 1;
}
実行すると、次のように出力されます。
arr[i] 3219650892
arr[i] 3219650896
arr[i] 3219650900
arr[i] 3219650904
arr[i] 3219650908
*******************
3219650912
最後の要素のアドレスにさらに1つの整数が追加されたように見えますが、これは奇妙に思えます。2番目の要素のアドレスを教えてくれるはずだったと思います。
この動作を理解するのを手伝ってもらえますか?