Código anterior de
Valkyr:
int n1, n2, i, j;
printf ("Ingrese el numero de columnas de la matriz:"); printf ("Ingrese el numero de filas de la matriz:");
int matriz[n1][n2];
//Leer numeros y almacenarlos en la matriz
for (i = 0; i < n1; i++)
{
for (j = 0; j < n2; j++) {
scanf ("%d", &matriz
[i
][j
]); }
}
//Mostrarla por pantalla
for (i = 0; i < n1; i++)
{
for (j = 0; j < n2; j++) {
printf ("%d |", matriz
[i
][j
]); }
}
El código que puse anteriormente es correcto (o al menos, eso creo porque he usado más C++ que C). Lo he compilado (completando el código ya que falta incluir la librería, declarar el método main y return 0) y ha compilado perfectamente. Lo he ejecutado y el resultado que ha mostrado es el correcto.
Si y No.
En el estándar de facto de C (ISO C90) y C++ solo se puede indicar el numero de elementos de un array mediante una constante entera mayor que cero.
En el caso del nuevo estándar de C (ISO C99) si es posible pero este no tiene, ni de lejos, el soporte que si tiene C90.
Un saludo