Ho bisogno di aiuto!!!
ormai sono in completa confusione.
Devo prendere le parole da dei file che passo come argomenti. volevo immagazzinare le parole e i file proprietari in una struct, potete mica dirmi dove sbaglio?
il programma che ho iniziato a buttare giu' e' questo

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


static struct file {
char *parola;
char *array[];
};
static struct file indicizzare[10];


int main(int argc, char *argv[])
{
char appoggio[50];
int i=0;
int j=0;
//creazione struttura file da indicizzare
for(i=1;i<=(argc-1);i++)
{
FILE *f2 = fopen(argv[i],"r");
while(!feof(f2))
{
fscanf(f2,"%s",appoggio);
indicizzare[j].parola = appoggio;
indicizzare[j].array[0]= argv[i];
j++;
}
}
}

volevo creare cioe' una struttura con campo parola per memorizzare le parole e con campo array per memorizzare i file che contengono quella parola.
ho provato a fare dei test e non capisco il perche' del risultato.
1) Se metto dentro al while
printf("%s",indicizzare[j].parola)
printf("%s",indicizzare[j].array[0])
tutto ok mi stampa la parola con il file a cui appartiene
2) Se le due printf precedenti le metto fuori dal for per vedere se tutto e' andato a buon fine mi accorgo che qualunque valore io dia a j mi stampa l'ultima stringa letta dalla fscanf, perche'?



Ps sono un novellino non mi maltrattate se ho scritto strafalcioni