int main(){
int i;
int arr[4];
for(int i=0; i<=4; i++){
arr[i] = 0;
}
return 0;
}
Vi un video en youtube de CS107 (lección 13) en el que se muestra este ejemplo y me dijo por qué el programa anterior conducirá a un bucle infinito al mostrar diagramas de memoria. arr [4] se sale de los límites y debería conducir a una dirección donde se almacena i y cambiar el valor de i de nuevo a 0, lo que lleva al bucle infinito. Pero cuando intenté ejecutar esto en mi mac usando el compilador gcc, para el bucle ejecutado (verificado al insertar printf) 5 veces. es decir, para el valor de i = 0,1,2,3,4.