【发布时间】:2017-03-25 08:39:18
【问题描述】:
以下程序编译成功,但是当我运行它时,当我用 -1 初始化 for 循环时它什么也不打印,但是当我用 0 初始化 for 循环时,它成功遍历所有数组。我想问一下我们可以不' t 在我们用负值初始化for循环的时候遍历数组??
#include <stdio.h>
#define TOTAL_ELEMENTS (sizeof(array) / sizeof(array[0]))
int array[] = {23, 34, 12, 17, 204, 99, 16};
int main(void) {
int d;
//printf("%d",TOTAL_ELEMENTS);
for (d = -1; d <= (TOTAL_ELEMENTS - 2); d++)
{
printf("%d ",d);
printf("%d\n", array[d+1]);
}
return 0;
}
【问题讨论】:
标签: c arrays sizeof unsigned signed