What is your name? Bill Gates<p>What is your quest? To conquer the world with Visual Basic.<p>At what index shall arrays start? One... no, zero... (arghhhhhhh.....)
1-based arrays always make me think of the <i>Numerical Recipes</i> books, specifically the one using C. They jump through all sorts of hoops to have 1-based arrays:<p>- Array allocations are done using helper macros which invoke malloc and return a pointer to memory one element before the beginning of the array. (I'm pretty sure this is undefined behaviour according to the standard btw; it just happens that the format of pointers isn't data-dependent anymore these days)<p>- Array accesses are just as usual in C, except array[1] is the first element.<p>- Freeing memory is again wrapped in a macro to calculate the actual beginning of the array.<p>- Multidimensional arrays are layers of this crap.