Invece di usare la lista, puoi usare l'istruzione realloc per aumentare o diminuire la memoria assegnata al vettore, conservando i dati in esso contenuti:
codice:
void *  realloc ( void * memblock, size_t size );
http://www.cplusplus.com/ref/cstdlib/realloc.html
Si usa così:
codice:
Vettore = (Tipo_Vettore*) realloc(Vettore, sizeof(Tipo_Vettore) * num_elementi;