Does C perform array out of bound checking? What is the output of the following program?
int main()
{
int i;
int arr[5] = {0};
for (i = 0; i <= 5; i++)
printf("%d ", arr[i]);
return 0;
}
Compiler Error: Array index out of bound.
The always prints 0 five times followed by garbage value
The program always crashes.
The program may print 0 five times followed by garbage value, or may crash if address (arr+5) is invalid.
This question is part of this quiz :
C Arrays