Mi sa che stai facendo un po' di confusione con le funzioni:
codice:
struct data inserisciData();
Quest'interfaccia dice che questa funzione restituisce una struttura di tipo struct data senza prendere nessun paramentro in ingresso...
codice:
main(){
struct data domani;
printf("Avvio del programma\n");
struct data inserisciData(struct data domani);
printf("Il giorno e':\n",domani.giorno);
printf("Il mese e':\n",domani.mese);
printf("L'anno e':\n",domani.anno);
return 0;
}
Nella riga evidenziata ci sono un paio di errori:
1) non devi mettere il tipo delle funzioni che chiami;
2) passi alla funzione "struct data domani", mentre come ti ho detto sopra, nel prototipo della funzione hai fatto si che a questa non venga passato niente.
codice:
struct data inserisciData(data){ /* Cos'è data???? Non esiste ne come variabile ne come tipo, toglilo! */
struct data oggi;
int g, a;
char m[15];
printf("Inserisci un giorno: \n");
scanf("%d",&g);
printf("Inserisci un mese: \n");
scanf("%s",&m);
printf("Inserisci un anno: \n");
scanf("%d",&a);
oggi.giorno=g;
oggi.mese=m;
oggi.anno=a;
return oggi;
}
Non so bene quali siano le tue intenzioni, ma secondo me quello che vuoi fare tu è, nel main:
codice:
...
struct data domani;
domani = inserisciData ();
...