Prima di tutto questo non va bene:
codice:
t_figlio figli[MAX_FIGLI];
davanti devi aggiungere typedef, perchè stai rinominando la struttura t_figlio con un array.

Inoltre vengono segnalati errori in funzioni che non hai postato.

Dovresti poi in tutte le funzioni, dichiarare un puntatore all'array figli[MAX_FIGLI] e tramite quello accedere al campo pid o cmd.

Esempio:
codice:
figli *pt;
(*pt).figli[i].cmd