Possible Duplicate:
Negative array indexes in C?
How come this compiles, and runs as intended? I'm confused. I was just curious what would happen and to my surprise. It worked.
#include <stdio.h>
#include <conio.h>
int main(void)
{
int i;
int array[5];
for(i = -1; i > -6; i--)
array[i] = i*-1;
for(i = -1; i > -6; i--)
printf("%d\n",array[i]);
getch();
}