誰かが私に次のようなコードがある出力を説明できますか
#define TOTAL_ELEMENTS (sizeof(array) / sizeof(array[0]))
int array[] = {23,34,12,17,204,99,16};
for(d=-1;d <= (TOTAL_ELEMENTS);d++)
{
printf("%d\n",array[d+1]);
}
出力が表示されないのはなぜですか?
しかし、d=1 のように for ループで d の値を変更すると、なぜ出力が表示されるのでしょうか?
マクロ TOTAL_ELEMENT wit d<=4 を削除した場合; 目的の出力が得られるのはなぜですか?