【发布时间】:2014-01-24 00:03:46
【问题描述】:
#include<stdio.h>
#define TOTAL_NO (sizeof(array) / sizeof(array[0]))
int array[]={23,34,12,17,204,99,16};
int main()
{
int d;
for(d=-1; d<=(TOTAL_NO-2); d++)
printf("%d\n",array[d+1]);
return 0;
}
为什么这个程序不显示数组的内容? 错误在哪里?
【问题讨论】:
-
为什么不
for(d = 0; d < TOTAL_NO; d++) printf("%d\n", array[d]);? -
sizeof(int) 返回一个未指定的 int。或 size_t 结构,其中包含一个 uint32_t。
标签: c arrays c-preprocessor