Oppure

Loading
08/03/14 22:02
Hunter-combo
Mi sapete dire perchè questo programma termina in modo anomalo ?
L'errore credo sia legato alla gestione della memoria nell'assegnamento alle strutture,ma non riesco a trovarlo.
Grazie in anticipo.

pastebin.com/…
aaa
08/03/14 22:42
nessuno
Questa linea deve essere

informazioni->dati_sport = dati;


Però, modificherei così il codice

    Info *informazioni = NULL;

    informazioni = (Info *)malloc(sizeof(Info));
    if(informazioni == NULL)
	{
		printf("Errore");
        return 1;
    }
 
    informazioni->dati_sport = (Sport *)malloc(sizeof(Sport));
    if(informazioni->dati_sport == NULL)
	{
		printf("Errore");
        return 1;
    }

    printf("\nInserisci ID : ");
    scanf("%d", &informazioni->ID);
    getchar();
 
    printf("\nNome sport :");
    gets(informazioni->dati_sport->Nome_sport);
 
    printf("\nInserisci le ore :");
    scanf("%d", &informazioni->dati_sport->Ore);
  
    printf("\nID: %d", informazioni->ID);
    printf("\nNome sport : %s", informazioni->dati_sport->Nome_sport);
    printf("\nOre  sport : %d", informazioni->dati_sport->Ore);
 
    free(informazioni->dati_sport);
	free(informazioni);

    return 0;
Ultima modifica effettuata da nessuno 08/03/14 23:05
Ricorda che nessuno è obbligato a risponderti e che nessuno è perfetto ...
---
Il grande studioso italiano Bruno de Finetti ( uno dei padri fondatori del moderno Calcolo delle probabilità ) chiamava il gioco del Lotto Tassa sulla stupidità.
11/03/14 16:59
Hunter-combo
Ciao, grazie delle risposta :k:

Avrei un altro problema , ho modificato il programma in modo tale da poter aggiungere, al richiamo della funzione "Aggiungi", i dati dentro una struttura allocata dinamicamente, purtroppo l'inserimento non va a buon fine.

pastebin.com/…

Sapresti dirmi dove sbaglio ? O avresti qualche consiglio su come poter svolgere questo esercizio. Grazie.
aaa
13/03/14 16:20
Hunter-combo
Risolto :D
aaa