Devo creare una lista dinamica per gestire il tempo di un turno di un giocatore in un gioco (per comodità vi riporto il topic che ho creato stamattina)
Sono sempre dietro a creare quel maledetto gioco... E adesso devo sapere quanto tempo scorre tra l'inizio e la fine di un turno di un giocatore.
Il tempo di ogni singola mossa lo devo memorizzare in una lista dinamica.
Ho creato il seguente codice, ma non funziona e mi blocca il programma...
codice:
...
...
struct tempo {
int valore;
struct tempo *next;
};
...
...
..
void Gioco()
{
...
time_t inizio;
time_t fine;
int dimArray = numGiocatori * MAX_NUM_TENTATIVO;
struct tempo tempoImpiegato[dimArray];
...
...
inizio = time(NULL);
...
...
...
fine = time(NULL);
tempoImpiegato[t].valore = fine - inizio;
for(j = 0; j < dimArray; j++)
{
struct tempo *tempoImpiegato[j] = NULL;
struct tempo *nuovo;
nuovo = (struct tempo*)malloc(sizeof(struct tempo));
nuovo -> valore = fine - inizio;
nuovo -> next = tempoImpiegato[j];
tempoImpiegato[j] = nuovo;
}
printf("\nTempo impiegato per fare la mossa: %d secondi", tempoImpiegato[t].valore);
...
}
Penso sia sbagliata l'allocazione, vero?