Declaración de una matriz con una variable de tamaño no constante [duplicado]
Esta pregunta ya tiene una respuesta aquí:
¿En qué compilador debo confiar? 4 respuestasEstoy estudiando para mi examen en C y estoy leyendo un resumen en C que descargué de algún sitio. Está escrito que no está permitido escribirarr[i]
dóndei
es una variable La única forma de hacerlo es con malloc.
Sin embargo, escribí el siguiente código y se compila sin advertencias y sin error en valgrind:
int index = 5;
int a4[index];
a4[0] = 1;
a4[1] = 2;
int index2;
scanf("%d",&index2);
int a5[index2];
a5[0] = 1;
a5[1] = 2;
Entonces, ¿cuál es la verdad detrás de las declaraciones de matriz? ¡gracias!