【问题标题】:Why Array index start from '0' [duplicate]为什么数组索引从'0'开始[重复]
【发布时间】:2013-05-29 09:00:04
【问题描述】:

我有一个关于 C/C++ 数组的问题。

为什么数组的索引从“0”开始而不是从“1”开始?

这有什么数学上的原因吗?

【问题讨论】:

标签: c++ c arrays


【解决方案1】:

在大多数编程语言中,任何数组的名称都是一个指针,它只不过是对内存位置的引用,因此表达式 array[n] 指向一个距离第一个元素 n 个元素的内存位置元素。这意味着索引被用作偏移量。数组的第一个元素正好包含在数组指向的内存位置(0 个元素之外),所以它应该总是被称为数组[0]。

a[i] 也可以读取为 [a+i] 处的值,表示为 *(a+i) ,因此它始终从零开始。

【讨论】:

  • Wah Vivek 多么棒的解释
猜你喜欢
  • 2020-11-23
  • 1970-01-01
  • 2017-05-22
  • 2016-12-07
  • 1970-01-01
  • 2019-03-11
  • 1970-01-01
  • 2019-09-05
  • 1970-01-01
相关资源
最近更新 更多