为什么在C#数组中索引从零开始?

数组是指向索引内存中地址的指针。该索引是数组的第一个元素。在这里,索引就像是偏移量,甚至在C语言诞生之前就已经有了概念。

假设您的数组元素从0Xff000开始,并有5个元素,例如{35,23,67,88,90}。因此,内存中的数组将类似于以下内容,因为int使用4个字节存储。

0Xff000 has 35
0Xff004 has 23
0Xff008 has 67
0Xff012 has 88
0Xff016 has 90

这意味着访问数组时,零偏移量将为索引0。

让我们进一步看看C#中的零索引的概念-

  • 如果数组为空,则元素为零,长度为0。

  • 如果数组在0索引中具有一个元素,则其长度为1。

  • 如果数组在0和1索引中有两个元素,则其长度为2。

  • 如果数组在0、1和2索引中具有三个元素,则其长度为3。

以下说明C#中的数组以索引0开头-

/* begin from index 0 */
for ( i = 0; i < 10; i++ ) {
   num[ i ] = i + 10;
}