为什么数组中的第一个元素总是0?

时间:2014-10-17 16:31:10

标签: arrays

我想知道数组中第一个元素为零的想法来自何处。为什么不是1?我已经习惯了它为零的事实,但是不能提出第一个元素为零的原因。

2 个答案:

答案 0 :(得分:2)

来自C语言和汇编程序。指针和数组是可以互换的

char* a;
a[0] is equivalent to *(a+0)

答案 1 :(得分:2)

数组是一个顺序内存块。如果数组的开头位于内存地址x,则第一个元素位于地址x+0,第二个元素位于x+sizeof(arraytype),第三个位于x+2*sizeof(arraytype),等等