1) file_c è un tipo di dati, quindi non scriverai
file_c.filename[0]
ma dovrai usare una variabile di tipo file_c o allocarla all'interno della funzione (è una singola struttura)
2) non si comprende (o non l'hai ancora detto) come dovrà essere scelta la posizione "libera" all'interno dei vari elementi filename[i] e simili ...
3) come ti dicevo, comunque dovrai allocare anche i singoli elementi tramite i puntatori filename[i] e simii ...