#include <stdio.h> int main() { int n; scanf("%d", &n); int L[n]; // ... return 0; }Estoy preguntando si puedo dar la cantidad de elementos en una matriz según sea necesario usando una variable. La maestra nos dijo que no se recomienda este método y no entendí por qué. Gracias por responder a mi pregunta.
Esta declaración
int L[n];es una declaración de una matriz de longitud variable. Los compiladores admiten condicionalmente las matrices de longitud variable.
Por lo tanto, no se excluye que pueda encontrar un compilador que no admita tales declaraciones.
Fíjese que en esta declaración el valor de la variable n será mayor que 0 .
Como una matriz de este tipo tiene una duración de almacenamiento automática, su tamaño no debería variar mucho. De lo contrario, debe asignar memoria para la matriz de forma dinámica.