Why does an array index always start with zero? Why doesn’t it start with 1 in the C language?

Asked by Last Modified  

Follow 0
Answer

Please enter your answer

Assured to satisfy your expectations

Some languages, like Python (Welcome to Python.org) allow negative array indices to indicate the nth element from the end, and in this case, -1 indicates the last element not the "last minus one" element. In the C language, v is the same as *(v+0) because that is easiest to compile, maps most directly...
read more
Some languages, like Python (Welcome to Python.org) allow negative array indices to indicate the nth element from the end, and in this case, -1 indicates the last element not the "last minus one" element. In the C language, v[0] is the same as *(v+0) because that is easiest to compile, maps most directly to how hardware works, and avoids certain kinds of off-by-one errors when working interchangeably with pointers and array subscripts.Moreover its just an another rule thats it. read less
Comments

App Developer Expert - Dart, Flutter, Android, Kotlin & Firebase

The first element of the array is exactly contained in the memory location that array refers (0 elements away), so it should be denoted as array. In C, the name of an array is essentially a pointer, a reference to a memory location, and so the expression array refers to a memory location n-elements...
read more
The first element of the array is exactly contained in the memory location that array refers (0 elements away), so it should be denoted as array[0]. In C, the name of an array is essentially a pointer, a reference to a memory location, and so the expression array[n] refers to a memory location n-elements away from the starting element. This means that the index is used as an offset. read less
Comments

Related Questions

Is C language is used for hack or not?
Yes its is used for hacking purpose.
Profile Photo
Jangam
what is the significance of lvalue?
An lvalue (locator value) represents an object that occupies some identifiable location in memory (i.e. has an address).
Profile Photo
Abhishek
What is C language?
it is a computer programming language, supporting structured programming, lexical variable scope and recursion, while a static type system prevents many unintended operations
Profile Photo
Uday
What is the difference between ++var and var++?
First one is present increment and second one is the post incremental t of the variable. Both increases value of var to one. The difference between pre and post increment is given in below example. Int...
Profile Photo
Chittaranjan

Now ask question in any of the 1000+ Categories, and get Answers from Tutors and Trainers on UrbanPro.com

Ask a Question

Related Lessons

What Would Be Life Cycle Of A Fresher After Campus In An IT Company?
1. Basic Technical Training: Since freshers are not subject matter experts so gone through 3 - 6 months basic technical training within Organization. 2. Technical Assessment: HR sends freshers to various...
Profile Photo

Why we need to learn Programming languages?
Language is medium for communication. If two parties like to communicate or exchange the thoughts they must know a language. Language should be understandable by both the Parties. For example A wants to...
Profile Photo

Programing Languages Learning Tricks
You want to learn that new language or library or framework as soon as possible, right? That’s understandable. Fortunately, there are a handful of tips that can help you to better retain all of that...
H

Harshal G.

0 0
View Comments0

Dynamic Memory Allocation in C using malloc()
#include <stdio.h>#include <conio.h>//#include <malloc.h> OR#include <stdlib.h>void main(){ int *ptr, i, n, sum = 0; printf("how many elements ? "); scanf("%d", &n);...
Profile Photo

Operators in C
Operators in C Operator: An operator is a symbol that tells the compiler to perform certain mathematical or logical calculations. Operators are used in programs to manipulate data and variables. The...
Profile Photo

Recommended Articles

Brilliant Academy is one of the reputed institutes for B.Tech tuition classes. This institute is specialised in delivering quality tuition classes for B.E, Engineering - all streams and Engineering diploma courses. Incorporated in 2012, Brillant Academy is a brainchild of Mr Jagadeesh. The main motto of the academy is to...

Read full article >

Lasya Infotech is a Hyderabad based IT training institute founded in 2016 by O Venkat. Believing in his innovation, passion and persistence and with a diverse blend of experience, he started his brainchild to deliver exemplary professional courses to aspiring candidates by honing their skills. Ever since the institute envisions...

Read full article >

Applications engineering is a hot trend in the current IT market.  An applications engineer is responsible for designing and application of technology products relating to various aspects of computing. To accomplish this, he/she has to work collaboratively with the company’s manufacturing, marketing, sales, and customer...

Read full article >

Business Process outsourcing (BPO) services can be considered as a kind of outsourcing which involves subletting of specific functions associated with any business to a third party service provider. BPO is usually administered as a cost-saving procedure for functions which an organization needs but does not rely upon to...

Read full article >

Looking for C Language Classes?

Learn from the Best Tutors on UrbanPro

Are you a Tutor or Training Institute?

Join UrbanPro Today to find students near you