PDA

Visualizza la versione completa : [C] Funzione time(NULL)


Andres7X
30-12-2008, 10:53
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.

Ho creato il seguente codice. Tutto ok, tranne che non so come stampare il formato del tempo. Mi basterebbero i secondi.



inizio = time(NULL);
...
...
...
fine = time(NULL);
mosse.tempo = fine - inizio; // il tempo viene memorizzato in una lista dinamica
printf("\nTempo impiegato per fare la mossa: %f", mosse.tempo);


Inizialmente avevo provato a mettere come escape %d, ma compariva sempre 0. Con %f, invece, appiono numeri strani...

andbin
30-12-2008, 11:42
Originariamente inviato da Andres7X
Mi basterebbero i secondi.time() ritorna un time_t, un semplice typedef per un tipo intero con segno (non dovrebbe interessare cosa davvero). La risoluzione di time() del secondo.


Originariamente inviato da Andres7X
Inizialmente avevo provato a mettere come escape %d, ma compariva sempre 0.Sicuro che tra inizio e fine passi pi di 1 secondo? :mame:


Originariamente inviato da Andres7X
Con %f, invece, appiono numeri strani... Ovvio .... passi sullo stack un intero ma printf si aspetta un double vedendo il %f ....

Andres7X
30-12-2008, 11:57
Toh adesso funziona o_o... Mah, a me pareva passasse pi di un secondo e ritornava sempre 0... Ora invece calcola il tempo correttamente.

Vabb, grazie mille ;)

Loading