Todas las variables utilizadas en los programas son ubicaciones en la memoria. Cuando declaramos una matriz ‘arr’ de algunas X (digamos 10) int’s
int arr [10] ; // C / C ++
Aquí estamos necesariamente asignando 10 * sizeof (int) bytes contiguos de memoria y la dirección base, es decir, la dirección inicial del fragmento de memoria se almacena en arr. Cuando queremos acceder a los elementos de la matriz de forma individual, lo hacemos indexando en el elemento de la matriz correspondiente mediante arr [i], que hace lo siguiente
obtener el valor entero ubicado en arr + i * sizeof (int) th ubicación
- ¿Qué es lo mejor que has hecho por alguien pero probablemente nunca sabrán quién lo hizo por él?
- Fantasía (género): ¿Un elixir de inmortalidad parece más plausible en la mente humana que un elixir que permite el vuelo humano o elixires fantásticos similares?
- ¿Los humanos necesitan contar historias? Si es así, ¿por qué?
- ¿Cuáles son algunas historias de esclavos retenidos después de la Guerra Civil para tener relaciones sexuales?
- ¿Cuál es la historia más loca que has escuchado en Sikkim Manipal Institute of Technology?
Para acceder al primer valor que se encuentra en la dirección base, es decir, en arr Necesitamos que especifique el índice por arr [0] que se traduce en arr + 0 * sizeof (int) que da el valor de arr (dirección base) que a su vez busca el primer elemento de la matriz.
Esto es lo que creo que es la razón de la indexación basada en cero.