Click here to Skip to main content
15,886,873 members

Survey Results

Should array indexing start at 0 or 1?   [Edit]

Survey period: 7 Mar 2011 to 14 Mar 2011

Old school VB devs and old school C devs know the answer. What's your feeling in this modern, enlightened era?

OptionVotes% 
01,11587.93
115312.07



 
GeneralBoth? Pin
PJ Arends7-Mar-11 6:46
professionalPJ Arends7-Mar-11 6:46 
GeneralRe: Both? Pin
Nagy Vilmos7-Mar-11 7:10
professionalNagy Vilmos7-Mar-11 7:10 
GeneralRe: Both? Pin
PJ Arends7-Mar-11 7:19
professionalPJ Arends7-Mar-11 7:19 
GeneralRe: Both? Pin
#realJSOP8-Mar-11 10:11
mve#realJSOP8-Mar-11 10:11 
GeneralRe: Both? Pin
rittjc8-Mar-11 14:29
rittjc8-Mar-11 14:29 
GeneralMust be 0 in order to be consistent across "all" .NET languages. Pin
The Storm7-Mar-11 6:15
The Storm7-Mar-11 6:15 
GeneralRe: Must be 0 in order to be consistent across "all" .NET languages. Pin
Mike Hankey7-Mar-11 12:08
mveMike Hankey7-Mar-11 12:08 
GeneralRe: Must be 0 in order to be consistent across "all" .NET languages. Pin
rittjc8-Mar-11 14:46
rittjc8-Mar-11 14:46 
Why use anything other than 0? It always works when the iterating a range and can just use the count. I see no benefit to using arbitrary offsets. If I saw them I would assume the code was a hack job, rather than a well designed or elegant piece of code, and that the code is confusing to anyone that doesn't know the reason (which would be everyone but the author, then maybe even the author if he picked it up later).

Even if you say something like from 3..9, you still have the problem of knowing whether you are starting with the 3rd or 4th element, and ending on the 9th or 10th element. It did not solve a thing. If you don't use zero as the index, there is always some a priori knowledge of the special case that you HAVE to know or document so it is easy to see and understand, which just increases the probability of a bug.

There is nothing gained except the ability to hack and it should not be encouraged as a principle of software development. That is like encouraging people us Goto or return in the middle of a function, to me.

I think this is why there is a lack of respect for VB coders. Their language of choice encourages bad technique. I prefer the codes look and the compiler tell me if I appear to be doing something stupid with warnings, rather than just hide it in the muck of verbosity and irregularity.

Just my opinion.
GeneralArray/Pointer/Loop/Lifts Pin
Ajay Vijayvargiya7-Mar-11 4:35
Ajay Vijayvargiya7-Mar-11 4:35 
GeneralRe: Array/Pointer/Loop/Lifts Pin
Phil J Pearson7-Mar-11 5:33
Phil J Pearson7-Mar-11 5:33 
GeneralRe: Array/Pointer/Loop/Lifts Pin
Ajay Vijayvargiya7-Mar-11 6:54
Ajay Vijayvargiya7-Mar-11 6:54 
GeneralRe: Array/Pointer/Loop/Lifts Pin
Fabio Franco8-Mar-11 3:22
professionalFabio Franco8-Mar-11 3:22 
GeneralWhy not start at any positive integer? Pin
BillW337-Mar-11 4:32
professionalBillW337-Mar-11 4:32 
GeneralRe: Why not start at any positive integer? Pin
Chris Maunder7-Mar-11 9:17
cofounderChris Maunder7-Mar-11 9:17 
GeneralRe: Why not start at any positive integer? Pin
#realJSOP8-Mar-11 10:12
mve#realJSOP8-Mar-11 10:12 
QuestionRe: Why not start at any positive integer? Pin
CPallini8-Mar-11 23:55
mveCPallini8-Mar-11 23:55 
GeneralRe: Why not start at any positive integer? Pin
PIEBALDconsult7-Mar-11 16:28
mvePIEBALDconsult7-Mar-11 16:28 
GeneralRe: Why not start at any positive integer? Pin
Chris Steenkamp8-Mar-11 3:50
Chris Steenkamp8-Mar-11 3:50 
GeneralRe: Why not start at any positive integer? Pin
RedSonja7-Mar-11 19:59
RedSonja7-Mar-11 19:59 
GeneralRe: Why not start at any positive integer? Pin
Rob Grainger7-Mar-11 22:36
Rob Grainger7-Mar-11 22:36 
GeneralRe: Why not start at any positive integer? Pin
Dan Neely9-Mar-11 6:08
Dan Neely9-Mar-11 6:08 
GeneralRe: Why not start at any positive integer? Pin
Kamran Behzad10-Mar-11 17:17
Kamran Behzad10-Mar-11 17:17 
GeneralOld school FORTRAN 77 devs know the answer. Pin
Nemanja Trifunovic7-Mar-11 3:39
Nemanja Trifunovic7-Mar-11 3:39 
GeneralRe: Old school FORTRAN 77 devs know the answer. Pin
OriginalGriff7-Mar-11 4:25
mveOriginalGriff7-Mar-11 4:25 
GeneralRe: Old school FORTRAN 77 devs know the answer. Pin
Nemanja Trifunovic7-Mar-11 4:32
Nemanja Trifunovic7-Mar-11 4:32 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.