Ciao a tutti... ho bisogno di una mano per questo problema:

Ho questo file .txt diviso in colonne da spazi, nalla prima ho il codice vestito(6cifre), nella seconda la marca nella terza il prezzo in euro:

106077 diesel 78.5
283211 carrera 54.0
965789 adidas 64.3
164300 lacoste 30.0
140045 allstar 39.9

IMP: il file txt (chiamato dati_indumenti.txt) puo avere il numero di righe variabili.

Lo scopo del programma è eseguire una di 3 opzioni:

- inserimento di un altra riga (non nel txt, ma nella struttura dinamica)
- modifica di una riga o di uno dei sui dati (non nel txt, ma nella struttura dinamica)
- eliminazione di una riga (non nel txt, ma nella struttura dinamica)

Io ho scritto questo codice :

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

typedef struct
{
int codice;
char marca [20];
double prezzo;
}dati_indumenti_t;

int main (void)
{

int numero_righe = 0,
carattere = 0;
dati_indumenti_t indumento;
FILE *file_dati_indumenti;

if ((file_dati_indumenti = fopen("dati_indumenti.txt","r")) == NULL)
printf("ERRORE in apertura del file\n");

else
{

while((carattere = fgetc(file_dati_indumenti)) != EOF )
{
if(carattere == '\n')
numero_righe++;
}
rewind(file_dati_indumenti);
fscanf(file_dati_indumenti, "%d %s %lg", &indumento.codice, indumento.marca, &indumento.prezzo);

while(!feof(file_dati_indumenti))
{
printf("%d %s %lg\n",indumento.codice, indumento.marca, indumento.prezzo);
fscanf(file_dati_indumenti, "%d %s %lf", &indumento.codice, indumento.marca, &indumento.prezzo);
}

printf("visualizzo\n%d %s %lg\nnum_righe:%d\n",indumento.codice, indumento.marca, indumento.prezzo, numero_righe);

fclose(file_dati_indumenti);
}

return (0);
}

Io eseguendo questo codice riesco a vsualizzare esattamente tutto il file txt stampando i singoli valori che assumono le variabili della struct, ed anche il numero di righe del .txt.

Il problema è più di uno:
alla fine io visualizzo i valori della struttura e ovviamente mi stampa solo i 3 valori dell'ultima riga,
COME DEVO FARE PER MEMORIZZARE TUTTI I DATI IN UNA STRUCT O UNA STRUTTURA DINAMICA E POTER FARE LE 3 OPERAZIONI???

Es: posso usare una matrice dinamica ??? se si come ?? perchè se fosse statica l'operazione di eliminazione non sarebbe possibile dato che in una matrice i dati nn possono essere eliminati. o mi sbaglio ??

VI PREGO RISPONDETE,,,,