Hola! para hacer un array dinamicamente tenes que usar punteros, con malloc reservas memoria y a traves de realloc reasignas ese bloque de memoria que devuelve malloc, ejemplo simple:
Código C:
Ver original#include <stdlib.h> // para malloc, realloc
int main() {
int *p;
int articulo;
printf("Dimension del array\n"); p
=malloc(articulo
* sizeof(int)); // aca creo un array dinamico de tamaño articulo * sizeof(int)for(i=0;i<articulo;i++)
scanf("%d",&p
[i
]); // ingreso de datos, lo manejas igual q a un array estatico
for(i=0;i<articulo;i++) // imprimis igual q un array estatico
printf("Se va a agregar un dato mas\n"); articulo++;
p
=realloc(p
, articulo
* sizeof(int)); // reasignamos el tamaño del array
printf("Ingrese el ultimo dato\n"); scanf("%d",&p
[articulo
-1]);
for(i=0;i<articulo;i++) // imprimis igual q un array estatico
return 0;
}
Queda en vos averiguar bien el uso de las funciones que se uso, y ademos como liberar memoria asignada dinamicamente
Saludos